2017-05-29 106 views
-2

我有一个sql语句,将external作为最后一个,但我也想按名称对其余结果进行排序。是否可以使用两个ORDER BY按大小写和按名称排序

SELECT `id` 
FROM `user` 
WHERE `parent` = %d AND `isFolder` = 1 
ORDER BY CASE WHEN name = \'External\' THEN 2 ELSE 1 END 
+0

你使用哪种DBMS? – Jens

+4

'ORDER BY case ... end,name' – jarlh

+0

是的,这是可能的。 http://gitolite.com/tias.html通常适用于编程中的所有内容。 – Xatenev

回答

0

根据要求,我的评论作为答案!

只需将name列添加到列表ORDER BY

SELECT `id` 
FROM `user` 
WHERE `parent` = %d AND `isFolder` = 1 
ORDER BY CASE WHEN name = \'External\' THEN 2 ELSE 1 END, name