加入收藏 | 设为首页 | 会员中心 | 我要投稿 上饶站长网 (https://www.0793zz.com.cn/)- 数据库平台、视觉智能、智能搜索、决策智能、迁移!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQL Oracle排序字符串(数字)和(带数字的字母)

发布时间:2021-04-03 02:42:51 所属栏目:MsSql教程 来源:网络整理
导读:我是oracle的新手,我遇到了问题. 我有一个名为file_id的列. 当我按顺序排序时,它会排序 11 10 100 11 11110 11412300 314200B14B170B18 编辑: 我希望这样排序. 1110111112311003004200B14B18 B170 下面的答案非常有效.只有我遇到的其他问题..我的记录是空白

我是oracle的新手,我遇到了问题.
我有一个名为file_id的列.

当我按顺序排序时,它会排序

1
1 
10 
100 
11 
11
110 
114
12
300 
31
4200
B14
B170
B18

编辑:
我希望这样排序.

1
1
10
11
11
12
31
100
300
4200
B14
B18 
B170

下面的答案非常有效.只有我遇到的其他问题..我的记录是空白的.我怎么能在最后制作空白记录?

1 
1 
10 
11 
11 
12 
31 
100 
300 
4200 
BLANK 
BLANK 
BLANK 
BLANK 
BLANK 
B14 
B18 
B170

感谢您的帮助.

解决方法

select column 
from table
order by 
  regexp_substr(column,'^D*') nulls first,to_number(regexp_substr(column,'d+'))

fiddle

(编辑:上饶站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读