gpt4 book ai didi

sql - SQL 中设计的大值(value)

转载 作者:行者123 更新时间:2023-11-29 03:55:19 25 4
gpt4 key购买 nike

好的,我必须将空值放在最后。查询应在 Oracle 和 MySQL 下运行。

我已经想到了

ORDER BY

CASE WHEN some_table.ord IS NULL THEN 9999999999 ELSE some_table.ord END

我应该使用 value > max(some_table.ord) 而不是 9999999999。

我认为用子查询来确定这个值在这里太丑陋了。

如果这是 C++,我可以为此目的使用像 INT_MAX 这样的宏。你能说出它的跨 DBMS SQL 双胞胎吗?

更新

问题是我是否可以输入一些..漂亮的东西而不是 9999999999,这样查询就可以在 Oracle 和 MySQL 中工作,

不是how to put null values last

最佳答案

为空标志使用一个额外的列:

order by 
case when some_table.ord is null then 2 else 1 end ,
some_table.ord

或者,如果您对该列可以取的值有足够的了解,只需硬编码一个大于其中任何值的数字:

order by coalesce(some_table.ord, 9999999999)

关于sql - SQL 中设计的大值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3528590/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com