SELECT TRIM(translate(A,'0,1,2,3,4,5,6,7,8,9,-','0,1,2,3,4,5,6,7,8,9,')) AS A FROM B ORDER BY TRIM(translate(A,'0,1,2,3,4,5,6,7,8,9,-','0,1,2,3,4,5,6,7,8,9,'));
解决方案 »
- 关于EM的那些事儿(高手!你懂得!)
- 在线等大神,求一个SQL,更新一个几十万的数据。
- 问个小白的问题 有了plsql developer 还用得着sqlplus吗?
- 一个排序问题,不知道用什么方法好!~
- 調查:大家所處的環境oracle是裝在甚麼操作系統上的,windows,linux,還是unix?
- #########小问题一个#########
- 请教oracle最大会话数和进程数可以设到多少?????
- 请各位帮忙指点:如何判断一个给定数据库是属于那一类型的数据库
- ORACLE 海量数据去重 查缺 处理,求Oracle解答
- 服务确定已经启动,但是连接提示ORA-01033
- 请问为什么会出错
- 8i 在 P4上如何装?在线等待,急,急,急,急,急,急,急,急,急,急!!!!
----------
1
2
3
10
11
4
5
9-1
9-2
6
7A
----------
8
8-1
9
9-3
9-4
9-5
12
11-1已选择19行。已用时间: 00: 00: 00.50
15:12:38 jlanzpa817>select * from test_number order by
15:12:44 2 to_number(decode(sign(instr(a,'-')),1,substr(a,1,instr(a,'-')-1),a));A
----------
1
2
3
4
5
6
7
8
8-1
9-1
9-2A
----------
9
9-4
9-5
9-3
10
11
11-1
12已选择19行。已用时间: 00: 00: 00.50
15:17:16 jlanzpa817>select * from test_number order by
15:17:16 2 to_number(decode(sign(instr(a,'-')),1,substr(a,1,instr(a,'-')-1),a)),
15:17:16 3 to_number(decode(sign(instr(a,'-')),1,substr(a,instr(a,'-')+1),0));A
----------
1
2
3
4
5
6
7
8
8-1
9
9-1A
----------
9-2
9-3
9-4
9-5
10
11
11-1
12
','0,1,2,3,4,5,6,7,8,9,'));A
----------
1
10
11
11-1
12
2
3
4
5
6
7A
----------
8
8-1
9
9-1
9-2
9-3
9-4
9-5已选择19行。已用时间: 00: 00: 00.60
15:20:14 jlanzpa817>
你需要转换为mm-dd格式
才能比较大小
下边的代码也只能比较到月
到天时也会出错
你可以模仿着在进行处理
select a from t_temp
order by
decode(substr
(
decode(substr( a || 'x',2,1),
'0',a,'1',a,'2',a,
'-', '0' || a,
'x','0' || a || '-00')
|| 'x',3,1),'x', a || '-00','-', a
)