You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让SQL查询结果首行固定为'Select',其余按字母排序?

解决SQL排序问题:首行固定'Select',其余行按字母排序

嘿,我来帮你搞定这个排序问题!你的当前语句确实能把'Select'固定在第一行,但因为只指定了CASE的排序条件,其余行没有额外的排序规则,所以它们的顺序是不确定的。

只需要在ORDER BY子句里添加第二个排序条件,就能让其余行按字母顺序排列了,修改后的SQL语句如下:

SELECT [Categories_Name] 
FROM [Categories] 
ORDER BY 
    CASE [Categories_Name] WHEN 'Select' THEN 1 ELSE 2 END,
    [Categories_Name]

为什么这么改?

这里的排序逻辑分两步:

  • 第一步:通过CASE语句给'Select'分配排序优先级1,其他所有行分配优先级2,这样优先级1的行必然排在最前面,保证'Select'是首行。
  • 第二步:在优先级相同的情况下(也就是所有非'Select'的行),按照[Categories_Name]的字母顺序进行排序,这样就能实现你要的其余行按字母排列的需求了。

比如如果你的Categories表数据是:'Select'、'Banana'、'Apple'、'Cherry',执行修改后的语句后,结果会是:

'Select'
'Apple'
'Banana'
'Cherry'

完美符合你的需求!

内容的提问来源于stack exchange,提问作者adam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:32:22