Aide création vue
Fermé
queryz
Messages postés
102
Date d'inscription
mardi 17 novembre 2009
Statut
Membre
Dernière intervention
9 décembre 2010
-
9 déc. 2009 à 14:09
OlivrT Messages postés 323 Date d'inscription lundi 2 novembre 2009 Statut Membre Dernière intervention 24 mai 2012 - 10 déc. 2009 à 08:49
OlivrT Messages postés 323 Date d'inscription lundi 2 novembre 2009 Statut Membre Dernière intervention 24 mai 2012 - 10 déc. 2009 à 08:49
A voir également:
- Aide création vue
- Vue satellite en direct gratuit de ma maison - Guide
- Creation compte gmail - Guide
- Création compte google - Guide
- Création site web - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation
9 réponses
OlivrT
Messages postés
323
Date d'inscription
lundi 2 novembre 2009
Statut
Membre
Dernière intervention
24 mai 2012
36
9 déc. 2009 à 14:24
9 déc. 2009 à 14:24
prix inf a 300
CREATE VIEW [dbo].[vwPrixInfA300]
AS
SELECT [Code article], prix, fournisseur FROM MaTable WHERE prix < 300
Pour les autres, selon que vous désirez que le plus soit supérieur, vous écrirez alors le signe ">" suivit d'un espace et du prix.
CREATE VIEW [dbo].[vwPrixInfA300]
AS
SELECT [Code article], prix, fournisseur FROM MaTable WHERE prix < 300
Pour les autres, selon que vous désirez que le plus soit supérieur, vous écrirez alors le signe ">" suivit d'un espace et du prix.
queryz
Messages postés
102
Date d'inscription
mardi 17 novembre 2009
Statut
Membre
Dernière intervention
9 décembre 2010
10
9 déc. 2009 à 14:28
9 déc. 2009 à 14:28
merci mais Prixinfa300 doit être le noùm d'un champ et non d'une table
OlivrT
Messages postés
323
Date d'inscription
lundi 2 novembre 2009
Statut
Membre
Dernière intervention
24 mai 2012
36
9 déc. 2009 à 14:53
9 déc. 2009 à 14:53
:-/ pourriez-vous être plus clair svp, sinon il devient difficile de vous aider
queryz
Messages postés
102
Date d'inscription
mardi 17 novembre 2009
Statut
Membre
Dernière intervention
9 décembre 2010
10
9 déc. 2009 à 15:17
9 déc. 2009 à 15:17
Bonjour,
Désolé , c'est vrai qu'il est clairement difficile de me comprendre , voici une explication plus explicite en image :
http://img687.imageshack.us/img687/7877/explik.jpg
MERCI BEAUCOUP
Désolé , c'est vrai qu'il est clairement difficile de me comprendre , voici une explication plus explicite en image :
http://img687.imageshack.us/img687/7877/explik.jpg
MERCI BEAUCOUP
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
OlivrT
Messages postés
323
Date d'inscription
lundi 2 novembre 2009
Statut
Membre
Dernière intervention
24 mai 2012
36
9 déc. 2009 à 16:38
9 déc. 2009 à 16:38
j'ai pas accès :-(
queryz
Messages postés
102
Date d'inscription
mardi 17 novembre 2009
Statut
Membre
Dernière intervention
9 décembre 2010
10
9 déc. 2009 à 16:42
9 déc. 2009 à 16:42
Ah bon , pourquoi?
OlivrT
Messages postés
323
Date d'inscription
lundi 2 novembre 2009
Statut
Membre
Dernière intervention
24 mai 2012
36
9 déc. 2009 à 16:47
9 déc. 2009 à 16:47
Tout est contrôlé (règles proxy) chez nous, c'est déjà un miracle que j'accède au forum
toma_f_1
Messages postés
89
Date d'inscription
dimanche 29 novembre 2009
Statut
Membre
Dernière intervention
16 décembre 2009
7
9 déc. 2009 à 17:40
9 déc. 2009 à 17:40
bonjour queryz, bonjour OlivrT
je me suis essayé à une requête d'aprés ton image :
select pf.code_produit, min(pf.prix_rlv) as prix_min, avg(pf.prix_rlv) as prix_moyen,
(select count(pf1.fournisseur) from prix_fournisseur pf1 where pf1.code_produit = pa.code_produit and pf1.prix_rlv < 0.2*pa.prix) as 'nombre de fournisseurs proposant un prix < à 20% du prix actuel',
(select count(pf2.fournisseur) from prix_fournisseur pf2 where pf2.code_produit = pa.code_produit and pf2.prix_rlv > 0.2*pa.prix and pf2.prix_rlv < 0.5*pa.prix) as 'nb de fourn. proposant un prix entre 20% et 50% du prix actuel',
(select count(pf3.fournisseur) from prix_fournisseur pf3 where pf3.code_produit = pa.code_produit and pf3.prix_rlv > 0.5*pa.prix and pf3.prix_rlv < 0.8*pa.prix) as 'nb de fourn. proposant un prix entre 50% et 80% du prix actuel',
(select count(pf4.fournisseur) from prix_fournisseur pf4 where pf4.code_produit = pa.code_produit and pf4.prix_rlv > 0.8*pa.prix and pf4.prix_rlv <= pa.prix) as 'nb de fourn. proposant un prix entre 80% et 100% du prix actuel'
from prix_actuelle pa, prix_fournisseur pf
where pa.code_produit = pf.code_produit
group by pa.code_produit
comme tu peux le voir... c'est un beau bordel !
non, en fait j'ai simplement divisé ta requete en sous requete qui sont ensuite interprétés comme des champs.ce que tu voulais. en gros il y a tes tables prix_actuelle pa, prix_fournisseur pf qui servent de référence à chaque fois, puis pour avoirs les count() je fais appel à une sous requete.
a priori ca marche chez moi.
par contre je vois pas trop ou tu veux en venir avec cette vue. Ne serait-it pas plus intéressant d'afficher directement les fournisseurs les moins cheres plutôt de savoir combien il y en a ? enfin, tout ca dépend de ce que tu veux faire...
aussi, je trouve bizarre que tu es une table "prix actuelle", à mon avis il serait plus beau d'avoir une table "fournisseur actuel faisant le lien entre les code produit et le code fournisseur actuel.
enfin, dernier conseil et le plus important. étudie bien les conditions des sous requetes que je te propose afin de savoir si elle répondent à ton cas.
je me suis essayé à une requête d'aprés ton image :
select pf.code_produit, min(pf.prix_rlv) as prix_min, avg(pf.prix_rlv) as prix_moyen,
(select count(pf1.fournisseur) from prix_fournisseur pf1 where pf1.code_produit = pa.code_produit and pf1.prix_rlv < 0.2*pa.prix) as 'nombre de fournisseurs proposant un prix < à 20% du prix actuel',
(select count(pf2.fournisseur) from prix_fournisseur pf2 where pf2.code_produit = pa.code_produit and pf2.prix_rlv > 0.2*pa.prix and pf2.prix_rlv < 0.5*pa.prix) as 'nb de fourn. proposant un prix entre 20% et 50% du prix actuel',
(select count(pf3.fournisseur) from prix_fournisseur pf3 where pf3.code_produit = pa.code_produit and pf3.prix_rlv > 0.5*pa.prix and pf3.prix_rlv < 0.8*pa.prix) as 'nb de fourn. proposant un prix entre 50% et 80% du prix actuel',
(select count(pf4.fournisseur) from prix_fournisseur pf4 where pf4.code_produit = pa.code_produit and pf4.prix_rlv > 0.8*pa.prix and pf4.prix_rlv <= pa.prix) as 'nb de fourn. proposant un prix entre 80% et 100% du prix actuel'
from prix_actuelle pa, prix_fournisseur pf
where pa.code_produit = pf.code_produit
group by pa.code_produit
comme tu peux le voir... c'est un beau bordel !
non, en fait j'ai simplement divisé ta requete en sous requete qui sont ensuite interprétés comme des champs.ce que tu voulais. en gros il y a tes tables prix_actuelle pa, prix_fournisseur pf qui servent de référence à chaque fois, puis pour avoirs les count() je fais appel à une sous requete.
a priori ca marche chez moi.
par contre je vois pas trop ou tu veux en venir avec cette vue. Ne serait-it pas plus intéressant d'afficher directement les fournisseurs les moins cheres plutôt de savoir combien il y en a ? enfin, tout ca dépend de ce que tu veux faire...
aussi, je trouve bizarre que tu es une table "prix actuelle", à mon avis il serait plus beau d'avoir une table "fournisseur actuel faisant le lien entre les code produit et le code fournisseur actuel.
enfin, dernier conseil et le plus important. étudie bien les conditions des sous requetes que je te propose afin de savoir si elle répondent à ton cas.
OlivrT
Messages postés
323
Date d'inscription
lundi 2 novembre 2009
Statut
Membre
Dernière intervention
24 mai 2012
36
10 déc. 2009 à 08:49
10 déc. 2009 à 08:49
avec le schéma ça doit être plus compréhensible :-) bonne journée