如何在SQL中按姓氏然后按名对表进行排序。我有很多重复的姓氏。我的桌子看起来像
table(
last_name varchar(20),
first_name varchar(20)
)
我已经写过这样的东西,但是它不能正常工作
SELECT * FROM table GROUP BY last_name ORDER BY first_name;
具体排序没关系,我可以根据发生的情况将其设置为ASC
或DESC
。
答案 0 :(得分:3)
这实际上很简单:
SELECT * FROM table ORDER BY last_name, first_name;
只需列出多个订购条件。从左到右评估它们。在上述情况下,将按last_name
然后按first_name
进行排序。
我不确定您为什么要使用GROUP BY
子句,如果您想知道有多少人共享相同的 last_name ,则可以使用GROUP BY
子句像这样:
SELECT last_name, COUNT(*) FROM table GROUP BY last_name ORDER BY last_name;