Tja, du kan använda IF
funktion
i MySQL (Observera betoningen på function
eftersom det också finns en orelaterade IF
uttalande
)...:
ORDER BY IF(TYPE='Member', LNAME, GROUPNAME) ASC
Men i det här fallet verkar det bättre valet (ur flexibilitetssynpunkt) vara CASE
uttalande
:
ORDER BY
CASE `type`
WHEN 'Member' THEN LNAME
WHEN 'Group' THEN GROUPNAME
ELSE 1 END
ASC
Observera att hela blocket från CASE
till END
är att betrakta som en enda "enhet". Resultatet är det du försöker sortera mot (Därför varför ASC
kommer efter blocket, snarare än inuti det)...