社区
MS-SQL Server
帖子详情
order by 的时候,如何把null值排在最后面??
chuanyi
2006-01-24 10:27:20
表A:字段:ID
1,2,null,3,null,4,5…………
我想排序成:
1,2,3,4,5,null,null…………
最好不要使用union,因为union 不能使用两个order by,如果把order by 放在最后面,那就成了
null,null,null,1,2,3,4,5……
也不能使用select * from (select * from )这种复合的语句
...全文
1224
10
打赏
收藏
order by 的时候,如何把null值排在最后面??
表A:字段:ID 1,2,null,3,null,4,5………… 我想排序成: 1,2,3,4,5,null,null………… 最好不要使用union,因为union 不能使用两个order by,如果把order by 放在最后面,那就成了 null,null,null,1,2,3,4,5…… 也不能使用select * from (select * from )这种复合的语句
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
terence4444
2006-01-24
打赏
举报
回复
select *
from A
ORDER BY (case WHEN id is NULL then 1 else 0 end)
lsqkeke
2006-01-24
打赏
举报
回复
简化一下:
select * from @u
order by (case when a is null then (select max(a) from @u)+1 else a end )
lsqkeke
2006-01-24
打赏
举报
回复
那就这样啊:
select * from @u order by (case when a is null then cast((select max(a) from @u where a is not null)as int)+1 else a end )
lsqkeke
2006-01-24
打赏
举报
回复
to 楼上 : 你的排序null在前面
-狙击手-
2006-01-24
打赏
举报
回复
select * from @t order by (case when id is null then (select max(id)+1 from @t) else id end )
-狙击手-
2006-01-24
打赏
举报
回复
select * from @t order by (case when id is null then (select max(id)+1 from @t) else id end ) desc
-狙击手-
2006-01-24
打赏
举报
回复
错了,再想
-狙击手-
2006-01-24
打赏
举报
回复
select * from tb order by (case when id is null then 1 else - id end ) desc
chuanyi
2006-01-24
打赏
举报
回复
不行,如果id超過999999999呢?id是不定的
lsqkeke
2006-01-24
打赏
举报
回复
select * from tb order by (case when id is null then 999999 else id end )
999999那个数设置成比最大ID 还大的数字
MySQL中
order
by排序将
NULL
排在最前/
后面
MySQL中
order
by排序将
NULL
排在最前/
后面
MySQL使用
Order
By排序将
NULL
值排
在最后
在MySQL中查询使用Oreder By ASC子句时,默认会把
NULL
值所在行排在最前面,但我们希望把
NULL
值排
到最
后面
,这时候需要在编写SQL语句使用一点技巧。那就是IS
NULL
(排序字段),排序字段 ASC 数据表实例(表名为...
ORDER
BY 排序时 字段有
NULL
值
NULL
值排
在
后面
一般情况下人们会想到使用非空值代替
NULL
这时使用coalesce()函数 把控制设置为0但是当字段为日期时,这用使用这种写法,即以此日期升序排列,然后把
NULl
值放在
后面
ORDER
BY lend.contract_submit_bank_date IS
NULL
...
PostgreSQL排序把
null
值排
在
后面
null
排在有值的行前面还是
后面
通过语法来指定 --
null
值在前 select * from tablename
order
by id
null
s first; --
null
值在后 select * from tablename
order
by id
null
s last; --
null
在前配合desc使用 ...
MySQL中
order
by排序将
NULL
排在最前或最
后面
NULL
的意思表示什么都不是,或者理解成“未知”也可以,它与任何值比较的结果都是false注意:默认情况下,MySQL会认为
NULL
值比其他类型的数据小, 也就是说:在
order
by排序的时候,
NULL
是最小的。前提:测试数据。
MS-SQL Server
34,837
社区成员
254,632
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章