有没有一种方法可以按字母和国家代码对结果进行排序,但让每个国家代码的一个结果排在最前面?
例如,这个顺序。
ORDER BY PortalStock.CountryCode DESC, PortalStock.Location ASC";
目前显示为:
Location CountryCode
LONDON GB
OXFORD GB
READING GB
LYON FR
MARSEILLE FR
PARIS FR
RENNES FR
我希望能够先按国家排序(GB第一),然后GB的牛津大学在列表的顶部,任何额外的结果是按字母顺序排列。
法国的结果应该从巴黎开始,任何额外的结果也应该按字母顺序排列。
Location Country
OXFORD GB
LONDON GB
READING GB
PARIS FR
LYON FR
MARSEILLE FR
RENNES FR
在不向数据库中添加更多顺序数据的情况下,这是否可行?
您希望有条件地按.国家代码排序。
order by country desc,
(case when location = 'oxford' then 1 else 2 end),
location;
如果您想要 oxford
顶多 GB
然后再添加一个条件。
(case when country = 'GB' and location = 'oxford' then 1 else 2 end)
注意:这将首先通过 country
不单 GB
& 然后先排序 oxford
地点: