Chà, bạn có thể sử dụng IF chức năng
trong MySQL (Lưu ý nhấn mạnh vào hàm function vì cũng có IF không liên quan tuyên bố
) ...:
ORDER BY IF(TYPE='Member', LNAME, GROUPNAME) ASC
Tuy nhiên, trong trường hợp này, có vẻ như lựa chọn tốt hơn (Từ quan điểm linh hoạt) sẽ là CASE tuyên bố
:
ORDER BY
CASE `type`
WHEN 'Member' THEN LNAME
WHEN 'Group' THEN GROUPNAME
ELSE 1 END
ASC
Lưu ý rằng toàn bộ khối từ CASE đến END được coi là một "đơn vị" duy nhất. Kết quả của đó là những gì bạn đang cố gắng sắp xếp chống lại (Do đó, tại sao ASC đến sau khối chứ không phải bên trong nó) ...