gpt4 book ai didi

mysql - 先按 null 排序,再按其他变量排序

转载 作者:可可西里 更新时间:2023-11-01 06:34:58 26 4
gpt4 key购买 nike

这是我现在的代码:

SELECT id, number
FROM Media
WHERE user = 10
ORDER BY id, number

但我希望它看起来像:

SELECT id, number
FROM Media
WHERE user = 10
ORDER BY while(number IS NULL), id

我想做的是将所有 NULLnumber 放在结果的顶部,但 number 不是NULL,按id

排序

这可能吗?

我用的是mysql。

最佳答案

像这样的事情怎么样:

SELECT id, number
FROM Media
WHERE user = 10
ORDER BY (case when number is null then 0 else 1 end), id

如果 number 为 NULL,则第一个 order by criteria 将为 0 ;否则 1
这意味着每一行的编号 NULL 都将排在其他行之前

请注意,无论如何,id 也会被排序。

你会得到这样的东西:

  • 编号为空; id=1
  • 编号为空; id=2
  • 编号为空; id=5
  • 编号为空; id=8
  • 数字不为空; id=3
  • 数字不为空; id=4
  • 数字不为空; id=7
  • 数字不为空; id=10
  • 数字不为空; id=12

关于mysql - 先按 null 排序,再按其他变量排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1347894/

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