Bonjour
Je souhaite numéroter les lignes du résultat d'une requête
Dans la FAQ j'ai trouvé l'exemple :
que j'ai transformé en une requête simple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SET @currentRow=0; SELECT @currentRow:=@currentRow+1 AS num_ligne, colonne1, colonne2, ... FROM nom_table WHERE ... ORDER BY colonne1, colonne2, ...
Quand je l'exécute dans le Query Browser ça ne marche pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SET @currentRow=0; SELECT @currentRow:=@currentRow+1 AS num_ligne, agt_code FROM agent order by agt_code
J'ai le résultat suivant :
No_lig-----agt_code
Null..........valeur
Null..........valeur
...
Si je fais :
Résultat ça marche pas : No_lig toujours à Null
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SET @NoLig=1; SELECT @NoLig AS No_lig, ...
Si je fais :
Résultat ça marche : No_lig toujours à 1
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SET @NoLig=0; SELECT @NoLig:=1 AS No_lig, ...
Je fais :
SELECT @t1:=(@t2:=1)+@t3:=4,@t1,@t2,@t3
Résultat ça marche :
@t1:=(@t2:=1)+@t3:=4-----@t1-----@t2-----@t3
5......................................5...........1...........4
Je fais :
SET @t2=1,@t3:=4;
SELECT @t1:=@t2+@t3,@t1,@t2,@t3
Résultat ça marche pas :
@t1:=(@t2:=1)+@t3:=4-----@t1-----@t2-----@t3
Null...................................Null........Null........Null
???
Je ne suis pas familiarisé à l'utilisation des variables dans les requêtes et je dois sans doute faire une erreur quelque part. Mais j'ai beau multiplié les essais et mes recherches sur le net, je n'arrive à rien.
En vous remerciant d'avance de vos lumières
Partager