除第一条记录外,使用SQL按顺序查询

red*_*dan 6 sql

我有一个想法,例如我有一个包含名称的表(Ann,Ben,Chris,Tom,John),
我想使用sql从字母a中查询它,z last.

但我有一个条件,我想把约翰放在第一个记录中.

GSe*_*erg 23

select name
from names
order by
  case when name = 'John' then 0 else 1 end,
  name
Run Code Online (Sandbox Code Playgroud)

  • @aF,避免使用UNION本身并不是目标,尤其是如果你可以使用`UNION ALL`,这可以防止对重复进行昂贵的检查. (2认同)