gpt4 book ai didi

sql - 订购以点分隔的数字序列(例如,版本号)

转载 作者:行者123 更新时间:2023-11-29 11:39:35 27 4
gpt4 key购买 nike

在我的数据库中,我在列中填写了这些数据:

1
1.1
1.1.1
1.1.1.1
1.1.2
1.10
1.11
1.2
1.9

我想对其进行排序,得到的结果如下所示:

1
1.1
1.1.1
1.1.1.1
1.1.2
1.2
1.9
1.10
1.11

我怎样才能做到这一点?简单使用“ORDER BY”会给出错误的结果,因为它是字典顺序。

最佳答案

您可以将字符串拆分为数组,将其转换为 int[] 并依赖 Postgres 对数组的自然排序:

SELECT   mycolumn
FROM mytable
ORDER BY STRING_TO_ARRAY(mycolumn, '.')::int[] ASC

关于sql - 订购以点分隔的数字序列(例如,版本号),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31089961/

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