gpt4 book ai didi

sql - Oracle 中的字母数字排序

转载 作者:太空狗 更新时间:2023-10-30 01:53:56 24 4
gpt4 key购买 nike

我正在使用以下查询从表中选择列名。

SELECT column_name FROM   all_tab_cols
WHERE table_name = 'TBL1' AND column_name like 'INFORMATION%'
order by column_name

结果集是这样的

INFORMATION1
INFORMATION10
INFORMATION11
INFORMATION12
.
.
.
INFORMATION2
INFORMATION20

现在,我希望它像这样排序

INFORMATION1
INFORMATION2
INFORMATION3
INFORMATION4
.
.
.
INFORMATION19
INFORMATION20

如何在不占用太多 CPU 资源的情况下实现这一目标?提前致谢!

最佳答案

先按字符串长度排序,再按字符串排序:

SELECT column_name 
FROM all_tab_cols
WHERE table_name = 'TBL1'
AND column_name LIKE 'INFORMATION%'
ORDER BY LENGTH(column_name), column_name;

SqlFiddleDemo

关于sql - Oracle 中的字母数字排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33780990/

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