SQL Server - 按案例排序

Tom*_*Tom 6 sql sql-server

我试图得到以下查询按城市按字母顺序显示结果,除了我希望"柏林"出现在列表顶部的事实

所以结果看起来像

  • 柏林
  • 阿尔及利亚
  • 澳大利亚
  • 希腊
  • ...

希望有道理,

我目前有以下......

SELECT CompanyName, City
FROM customers
ORDER BY case when City = 'Berlin' END
Run Code Online (Sandbox Code Playgroud)

tda*_*ers 16

几乎:

SELECT CompanyName, City
FROM customers
ORDER BY CASE WHEN City = 'Berlin' THEN 0 ELSE 1 END, City
Run Code Online (Sandbox Code Playgroud)


Ral*_*ine 7

SELECT CompanyName, City, CASE WHEN City = 'Berlin' THEN 0 ELSE 1 END AS Ordering
FROM customers
ORDER BY Ordering, City
Run Code Online (Sandbox Code Playgroud)


Kir*_*tev 1

SELECT CompanyName, City 
FROM customers 
ORDER BY case when City = 'Berlin' then 1 else 999 END asc
Run Code Online (Sandbox Code Playgroud)