|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||||||
|
Invité de passage
![]() Inscription : septembre 2008 Messages : 19 ![]() |
Une requete mysql me retourne des enregistrements triés sur le champ pagetitle.
La structure retournée contient les champs id et pagetitle et type : Code :
Pour cela j'utilise la fonction array_multisort: Code :
Cf exemple ci-dessus à faire tourner. Comment puis je trier les lignes du tableau en me basant sur la valeur rank sans perdre l'ordre des colonnes suivantes ? Dit autrement on obtient cela, a savoir les lignes de rank=1 triées sur le champ ID: Code :
Code :
Merci de votre aide |
||||||||
|
|
00
|
|
|
#2 |
|
Expert Confirmé Sénior
![]() Inscription : septembre 2004 Messages : 5 421 ![]() |
Bienvenue sur les forums de developpez.com Ta colonne rank, tu l'ajoute comment ? Sur la base de quel critère ? Tu peux pas l'ajouter lors de ta requete SQL, ce qui te permettra de faire le tri avec MySQL ?
__________________
Get your motor runnin' Head out on the highway... |
|
|
00
|
|
|
#3 | |
|
Invité de passage
![]() Inscription : septembre 2008 Messages : 19 ![]() |
Citation:
|
|
|
|
00
|
|
|
#4 | ||
|
Expert Confirmé Sénior
![]() Inscription : septembre 2004 Messages : 5 421 ![]() |
Ok, alors il faut gruger.
Tu as ton ordre qui bon. Donc tu rajoutes une colonne virtuelle de tri sur laquelle se basera array_multisort. Cette colonne contient simplement le numéro d'ordre actuel. ça revient à faire en sql: GROUP BY rank DESC, <rank_precedent> ASC Code :
__________________
Get your motor runnin' Head out on the highway... |
||
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : septembre 2008 Messages : 19 ![]() |
Waouh!. Solution élégante. Le nez sur le problème je ne voyais même plus la solution. Merci pour ton aide précieuse.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com