Bonjour.
j'essaie de faire une requête donnant l'enregistrement précédent et suivant avec
Supposons la table suivante :
Je choisis l'enregistrement N°3 et je voudrais que la requête me retourne l'enregistrement N°2 (le précédent) et le N°4 (le suivant) et ce dans deux colonnes (suivant, précédent) comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8ID VALUE ----------- id1 value1 id2 value2 id3 value3 id4 value4 id5 value5
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4PRECEDENT SUIVANT ---------------------- id2 id4
Bon : Déja je n'arrive pas à récupérer simplement l'enregistrement N°2 et N°4
ex :
Mais Mysql n'aime pas le LIMIT dans une clause IN
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT `Id` FROM `table1` WHERE `Id` IN (SELECT `Id` FROM `news` WHERE `Id`<3 LIMIT 1) OR `Id` IN (SELECT `Id` FROM `news` WHERE `Id`>3 LIMIT 1)
#1235 - This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'
Partager