Aide requete SQL
GYo
-
GYo -
GYo -
Bonjour,
je debute en langage sql et j’ai rencontrer un problème de requêtes. J’aimerais effectuer un tri de ce genre :
[URL=https://imageshack.com/][IMG]http://img178.imageshack.us/img178/1815/imaqs2.th.png[/IMG][/URL]
Cependant je n’arrive pas à ecrire sa requêtes. J’ai essayer :SELECT reference, etat
FROM table
WHERE etat=’X ‘
AND etat=’y’
Mais cela ne correspond pas à ce que je cherche puisqu’il selectionne tout les x et les y.
Merci d’avance pour les aides.
je debute en langage sql et j’ai rencontrer un problème de requêtes. J’aimerais effectuer un tri de ce genre :
[URL=https://imageshack.com/][IMG]http://img178.imageshack.us/img178/1815/imaqs2.th.png[/IMG][/URL]
Cependant je n’arrive pas à ecrire sa requêtes. J’ai essayer :SELECT reference, etat
FROM table
WHERE etat=’X ‘
AND etat=’y’
Mais cela ne correspond pas à ce que je cherche puisqu’il selectionne tout les x et les y.
Merci d’avance pour les aides.
Configuration: Windows XP Internet Explorer 6.0
7 réponses
-
Salut,
Peut-être :SELECT t1.reference, t1.etat FROM table t1, table t2 WHERE t1.reference = t2.reference AND t1.etat='X' AND t2.etat='Y'
-
Bonjour
Essaye ceci :
select reference,etat from table
where reference in (select reference from table where etat = 'X') AND
reference in (select reference from table where etat = 'Y')
Bonne journée. -
J'ai testé les 2 méthodes,
dans la première je suis obligé de créer une 2eme table pour que la requête fonctionne, mais cela ne correspond pas à ce que j'attend car elle n'affiche que l'etat 'X' (je souhaiterai qu'elle affiche aussi l'etat 'Y') elle a cependant bien fait le tri.
La deuxieme hélas ne fonctionne pas car il y a une erreur de syntaxe -
salut
essai ca
select reference,etat
from table_nom
order by reference,etat
bonne chance -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
ah j avais oblier la condition
il faut taper
select reference,etat
from table_name t1;t2
where t1.reference=t2.reference
order by reference,etat
et c'est tout -
SELECT a.REFERENCE, a.ETAT
FROM TABLE a
WHERE a.ETAT = 'X'
AND EXISTS (SELECT * FROM TABLE b WHERE a.REFERENCE = b.REFERENCE AND b.ETAT = 'Y')
UNION
SELECT c.REFERENCE, c.ETAT
FROM TABLE c
WHERE c.ETAT = 'Y'
AND EXISTS (SELECT * FROM TABLE d WHERE c.REFERENCE = d.REFERENCE AND d.ETAT = 'X')
ORDER BY REFERENCE, ETAT
;
CQFD -- a noter que tu n'utilises qu'une table. Ne t'amuses pas à en créer plusieurs -- -