|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : mars 2009 Messages : 25 ![]() |
Bonjour à tous et à toutes,
J'ai une question relative à l'écriture d'une requête qui doit faire le test suivant : Sur un ensemble de résultat retourné par une requête, j'ai des groupes d'enregistrement représentés par un id et d'autres champs. Ce que je souhaiterai, c'est de dire si pour un enregistrement dans le groupe X, le champ Y n'est pas égale à par exemple une valeur z, ne pas me retourner le champs mais aussi le groupe auquel appartient l'enregistrement. Exp : ID Statut Autres champs … 11 1 … 11 7 … 23 2 … 23 9 … Pour l'ID 23, Statut <> 7 , donc ne pas me retourner l'enregistrement 23 mais aussi l'enregistrement 23 avec statut 2. En gros, me laisser que les enregistrements qui ont eu un statut = 7 à une date Je ne sais pas comment formuler ce problème à l'aide d'une requête? Si je mets une condition Where statut = 7, le résultat est uniquement les enregistrement avec statut =7 mais pas les enregistrement avec le meme ID mais statut différent de 7. Pouvez-vous m'aider ? |
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() ![]() Inscription : janvier 2010 Messages : 1 084 ![]() |
Bonjour,
Je ne suis pas sur de bien comprendre le problème. Est-ce que cette requete vous donne ce que vous voulez ? Code SQL :
|
||
|
|
00
|
|
|
#3 | ||||
|
Membre chevronné
![]() ![]() Inscription : juillet 2006 Messages : 1 194 ![]() |
sinon
Code :
Code :
|
||||
|
|
00
|
|
|
#4 |
|
Invité régulier
![]() Inscription : mars 2009 Messages : 25 ![]() |
Merci sergejack pour t a réponse.
J'ai testé ta première solution, elle a l'ai de bien marcher. Du coup, dans ton deuxième select : .... Where exists( select 1 ) Le '1' que veut-il dire exactement ? |
|
|
00
|
|
|
#5 | |||
|
Invité régulier
![]() Inscription : mars 2009 Messages : 25 ![]() |
Citation:
Ta requête me donne le bon résultat. Je t'explique. J'ai des commandes différentes qui changent de statuts avec le temps. Du coup, quand le statut d'une commande change, on l'insère dans la base de donnée avec le meme id cmd mais avec un statut différent. Moi ce que je veux, c'est que la requête me retourne toutes les commandes qui ont eu a un moment donné le statut =7 (statut final), avec l'historique de ce qui s'est passé avant. c a d id cmd =23 cette commande est passé d'un statut 1 a 9 a 5 a 7 idcmd=56 cette commane est passé d'un statut 1 à 5 à9 mais pas à 7 La requete doit me retourner que la cmd 23 avec les differents statuts mais pas la commande 56. |
|||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com