我正在使用mySQL。我必须按姓氏排序联系人的姓名,但是在没有姓氏的情况下,我要按姓氏排序。
看起来像:
ORDER BY lastname = "", lastname, firstname
但是,这会使带有姓氏的人出现在顶部。我想要的行为是将名字和姓氏混合在一起,就像它们来自同一字段一样。
示例(假设这些是名称):
A,T
Z,G
A
B
C
相对:
A
A,T
B
C
Z,G
谢谢
最佳答案
ORDER BY COALESCE(NULLIF(LastName, ''), FirstName), FirstName
关于SQL:ORDER BY两列混合在一起,不是基于优先级的,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4512767/