Eh bien, vous pouvez utiliser le IF
fonction
dans MySQL (notez l'accent mis sur function
car il y a aussi un IF
déclaration
)... :
ORDER BY IF(TYPE='Member', LNAME, GROUPNAME) ASC
Cependant, dans ce cas, il semble que le meilleur choix (du point de vue de la flexibilité) serait le CASE
déclaration
:
ORDER BY
CASE `type`
WHEN 'Member' THEN LNAME
WHEN 'Group' THEN GROUPNAME
ELSE 1 END
ASC
Notez que le bloc entier de CASE
à END
doit être considéré comme une seule "unité". Le résultat est ce que vous essayez de trier (d'où la raison pour laquelle le ASC
vient après le bloc, plutôt qu'à l'intérieur de celui-ci)...