Bonjour, j'ai un petit soucis en SQL je ne sais pas comment ramener les deux premiers résultat d'une requète.
Soit la table RESERVATION composé de : RESERV_ID| DATE_RESERV | NBPERS
Lorsque j'interroge ma table j'ai deux résultat :
1 | 30/01/2011 | 3
2 | 28/01/2011 | 2
Je cherche la requête pour n'avoir qu'un seul résultat retourné et composé des deux entrées. Malheureusement avec le code suivant je retourne :
2 | 28/01/2011 | 2 | 2 | 28/01/2011 | 2
Il peut y aussi y avoir plus de deux entrées dans cette table, à chaque fois il faut que je retourne la dernière et l'avant-dernière réservation.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SELECT * FROM( SELECT * FROM RESERVATION WHERE rownum<=1 ORDER BY DATE_RESERV DESC) r1 JOIN (SELECT * FROM RESERVATION WHERE rownum<=1 ORDER BY DATE_RESERV ASC) r2 ON r1.RESERV_ID = r2.RESERV_ID)
Pouvez-vous m'aider SVP ? Merci d'avance !
ps : je sais c'est pas très beau comme code mais j'ai pas trouvé mieux, cela dit je reste ouvert aux propositions !
Partager