Aide création vue
queryz
Messages postés
102
Date d'inscription
Statut
Membre
Dernière intervention
-
OlivrT Messages postés 323 Date d'inscription Statut Membre Dernière intervention -
OlivrT Messages postés 323 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Voici un extrait de ma table :
code article / prix / fournisseur
12345 |1000 |MACHIN |
12345 |990 |TRUC |
12346 |1222 |MACHIN |
12346 |360000 |TRUC |
J'aimerais créer une vue avec les champs suivant : prix mini , prix moyen , prix inf a 300 , prix inf a 500 , prix inf a 1000 , prix sup a 1000
auxun soucis pour les deux premier champ mais je galére pour le reste , comment faire???
merci pour votre aide
Voici un extrait de ma table :
code article / prix / fournisseur
12345 |1000 |MACHIN |
12345 |990 |TRUC |
12346 |1222 |MACHIN |
12346 |360000 |TRUC |
J'aimerais créer une vue avec les champs suivant : prix mini , prix moyen , prix inf a 300 , prix inf a 500 , prix inf a 1000 , prix sup a 1000
auxun soucis pour les deux premier champ mais je galére pour le reste , comment faire???
merci pour votre aide
A voir également:
- Aide création vue
- Vue satellite en direct gratuit de ma maison - Guide
- Creation compte gmail - Guide
- Création site web - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation
- Création compte google - Guide
9 réponses
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.
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
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.