有没有办法首先通过SQL Query获取一些选定的数据并按升序停止数据

Joh*_*ohn 2 sql-server

假设我在表tbl中以非经典的方式(不是按顺序)拥有国家数据.现在我想以'United States','Canada' & 'India'升序显示国家/地区的首位和其他国家 /地区.

Country

India
China
Brazil
Azerbaijan
Bahamas
United State
Denmark
Canada
Run Code Online (Sandbox Code Playgroud)

现在我希望这些数据为:

Country

United State        // US,Canada,India should be First 3.
Canada
India
Azerbaijan         // After rest country comes in ascending Order.
Bahamas
Brazil
China
Denmark
Run Code Online (Sandbox Code Playgroud)

任何建议真的很感激.

Eug*_*eck 8

SELECT Country FROM tbl 
ORDER BY CASE
  WHEN Country='United State' THEN 0
  WHEN Country='Canada' THEN 1
  WHEN Country='India' THEN 2
  ELSE 3
END, Country;
Run Code Online (Sandbox Code Playgroud)

  • 我喜欢,除了我会使用'而不是':P (3认同)