gpt4 book ai didi

mysql - 使用给定顺序和空随机值对 MySQL 表进行排序

转载 作者:行者123 更新时间:2023-11-30 01:28:05 25 4
gpt4 key购买 nike

我有一个 MySQL 表 Section,其中有一列 orderingordering 的一些值是数字,并且它们是互斥的(没有两个数字是相同的),其他值是简单的 NULL

示例:

ID Ordering
-- --------
1 NULL
2 2
3 5
4 NULL
5 NULL
6 3
7 NULL

现在我想对该表进行排序并得到以下结果:

(ROW NUMBER) ID  Ordering
------------ -- -------- ------------
1 4 NULL
2 2 2
3 6 3
4 5 NULL
5 3 5
6 7 NULL
7 1 NULL

即我希望具有非 NULL 值的行出现在给定的 排序 中,但具有 NULL 值的行以随机顺序出现在其余行中(不可预测)。

我确信总是有足够的 NULL 来填充空白。

我正在考虑首先获取有订单的内容(WHERE ordering IS NOT NULL),然后获取没有订单的内容(WHERE ordering IS NULL),然后以某种方式创建一个额外的列,将 NULL 的内容转换为数字这在前者中没有出现。

任何帮助将不胜感激。我在一个项目中使用它,其中有些部分具有固定位置,但其他部分可以设置为随机顺序。每次页面加载时,都应该随机显示随机部分。

最佳答案

您可以使用 nvl() 函数将 NULL 结果更改为 0 以外的其他值

关于mysql - 使用给定顺序和空随机值对 MySQL 表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17763791/

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