首页 SQLServer sqlserver中 表字段中,按A列排序,0的排在最上面,其它的按降序排

sqlserver中 表字段中,按A列排序,0的排在最上面,其它的按降序排

作者:胡同里的砖头 围观群众:90 更新于:2024-12-16

在 SQL Server 中,你可以使用 ORDER BY 子句结合 CASE 表达式来实现按 A 列排序,使得 0 排在最上面,而其他值按降序排列。以下是一个示例查询:

假设你有一个表 YourTable,其中有一列 A,你可以这样写查询:

SELECT *
FROM YourTable
ORDER BY
CASE
WHEN A = 0 THEN 0
ELSE 1
END,
A DESC;
解释:

CASE WHEN A = 0 THEN 0 ELSE 1 END:这个表达式会将 A 列中的 0 映射为 0,其他值映射为 1。这样,0 会被优先排序。
A DESC:对于非 0 的值,按 A 列的值进行降序排列。
这样,查询结果中 A 列为 0 的记录会排在最前面,其余记录按 A 列的值降序排列。

  • 本文标题: sqlserver中 表字段中,按A列排序,0的排在最上面,其它的按降序排
  • 文章分类:【SQLServer】
  • 非特殊说明,本文版权归【胡同里的砖头】个人博客 所有,转载请注明出处.
留言评论
站点声明:
1、本站【胡同里的砖头】个人博客,借鉴网上一些博客模板,取其各优点模块自行拼装开发,本博客开发纯属个人爱好。
2、所有笔记提供给广大用户交流使用,可转载,可复制,纯个人开发所遇问题锦集记录使用
Copyright © huzlblog.com All Rights Reserved. 备案号:苏ICP备2021056683号-8