Requête SQL simple et pourtant

mattouuu Messages postés 143 Statut Membre -  
holybeer Messages postés 437 Statut Membre -
Bonjour,

Pour simplifié mon problème, j'ai une table vente avec 3 champs:
- nom_produit
- nom_client
- annee_vente.

Je souhaiterais récupérer tous les produits qui ont été vendu avant 2007 ET après 2010.

Cela me paraît tout bête et pourtant je n'y arrive pas.

Merci par avance,
Mathieu.
A voir également:

13 réponses

holybeer Messages postés 437 Statut Membre 65
 
M'en doutais, puisqu'un même produit ne peut pas être soit vendu en 2007 et en 2010.

donc je pense que ta requête est bonne. Faut remplacer le And par le Or.
1
francis
 
select * from vente where annee_vente < 2007 or annee vente > 2010
0
mattouuu Messages postés 143 Statut Membre 21
 
Non, avec cette requête, les produits vendus avant 2007 ne sont pas forcément vendus après 2010, et inversement.
Merci quand même.
0
francis
 
Soit plus clair...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Melooo Messages postés 1476 Statut Membre 84
 
Bonjour,
je rejoins francis, ca requête a l'air d'etre bonne... que veux tu exactement ?
0
mb362 Messages postés 76 Statut Membre
 
bonjour ,
mais c'est clair cette REQUETTE ,tous les produits qui ont ete vendus avant 2007 et aprés 2010 ce n'est d'autre que :
tu selectiones les produits qui sont vendus entre 2007 et 2010 et tu les sousctrais de tous les produits que tu as dans ta table ca veut dire ====>

select nom_produit from TABLE
where nom_produit not in
( select nom_produit from TABLE where annee_vente between [2007 , 2010] )



dsl je me rappel pas bien de la syntaxe "between" mais c'est le meme principe.
0
francis
 
nawak...
0
Melooo Messages postés 1476 Statut Membre 84
 
mb362 : il veut les produits vendu avant 2007 et après 2010 pas entre 2007 et 2010 donc le between ne sert pas à grand chose pour cette requête...
0
Slylia Messages postés 64 Statut Membre 1
 
Melooo : Avec la requète de mb362, on prend tous les produits de la table et on enlève ceux dont la date de vente est supérieure à 2007 et inférieure à 2010. Il nous reste donc les produits vendus avant 2007 et après 2010.
La requète est donc correcte.
0
francis
 
Je ne vois pas où le rédacteur a écrit qu'il voulait les produits qui n'ont pas été vendus entre 2007 et 2010...
0
holybeer Messages postés 437 Statut Membre 65
 
select nom_produit
from vente
where annee_vente < 2007
and annee > 2010;

Mais pas sur.
0
francis
 
0 résultat.
0
enark78 Messages postés 491 Statut Membre 17
 
ca doit pourtant etre quelque chose comme ca. Les produits, clients et date de vente appartiennent à la meme entité ?
0
holybeer Messages postés 437 Statut Membre 65
 
Et surtout, comment on peut le faire sans clé primaire ? :(
0
enark78 Messages postés 491 Statut Membre 17
 
La requete de mb362 est bonne dans l'esprit mais je ne crois pas qu'elle s'applique au cas de mattouuu : il semble vouloir la liste des produits qui ont été vendus avant 2007 et après 2010, pas soit l'un soit l'autre (il faut qu'un meme produit ai été vendu dans ces 2 périodes).
0
francis
 
enark78, t'expliques mieux que le gars qui a un problème : D
0