我有这个数据
names
============
All
Brian
Carey
Heather
Robert
Zach
_Immediate
这是为他们选择ORDER BY
名称的时候。我想发表一个声明,使_Immediate出现在顶部,如
names
============
_Immediate
All
Brian
Carey
Heather
Robert
Zach
如果有关系/有帮助,_Immediate在列表中的绝对最低ID
。我怎样才能做到这一点? UNION
是唯一的方法吗?
答案 0 :(得分:1)
您可以使用CASE表达式指定ORDER BY:
ORDER BY CASE
WHEN names = '_Immediate' THEN 0
ELSE 1
END
, names
答案 1 :(得分:1)
在MySQL中,我认为最简单的方法是:
order by (name = '_Immediate') desc, name
MySQL将布尔值视为整数,“ 1”为true,“ 0”为false。 desc
就是“ 1”在“ 0”之前。
答案 2 :(得分:0)
您可以在下面尝试-
select * from tablename
order by case when names='_Immediate' then 0 else 1 end, names