如果我想按一列排序一个表,但将一个指定的行提取到顶部,在 MySQL 中,我可以做这样的事情......(小提琴)
select * from name
order by surname != 'moon', surname
但是,当我想在 oracle 中执行此操作时,order by 子句中的真实测试不起作用,我最终不得不做这样的事情......(小提琴)
select surname from name
order by case when surname = 'moon' then 0 else 1 end, surname
Oracle 不支持 order by 子句中的真实测试的原因是什么?
(甚至是与此相关的 select 语句)
结果
(所有都按字母顺序排列,除了moon
浮动到顶部)
SURNAME
moon
adane
bell
day
larkin
williams