sql排序问题 表中的某字段是字符串类型(oracle),记录的是如: 96.23% 12.34% 8.76% 100% 不完整 等的数据 要求现在查询出来的记录根据 这个字段排序 不完整的拍到最后面 百分比大的排在前面 如何写sql 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 SQL> select * from testt; A----------90%40%10%30%50% SQL> SQL> SELECT * FROM testt 2 ORDER BY to_number(replace(a,'%','')) 3 desc; A----------90%50%40%30%10% SQL> --先将不完整转换成0%,然后去掉%排序select * from test order by to_number(replace(decode(recode,'不完整','0%',recode),'%','')) desc SELECT TO_NUMBER(REPLACE('99.88%','%','')) TONUMBER FROM DUALORDER BY TONUMBER ORDER BY to_number(nvl(replace(decode(fld1,'不完整',0,fld1),'%',''),0)) desc e,还一个不完整啊SELECT * FROM testt ORDER BY to_number(translate(a,'²»ÍêÕû%','')) desc; SELECT * FROM testt ORDER BY to_number(translate(a,'不完整%','')) desc; ora的replace 函数 创建表时出现奇怪的错误 简单的条件选择问题。 大家请帮帮我,我安装Oracle 10g时候遇到好多问题. 在oracle9.0中为何提示"ora-01002 越顺存取" VB中调用ORAC过程,大家帮忙,在线等,谢谢!!! 执行脚本后无法为表空间创建inital段区是什么原因?急! 關於oracle backup (12)菜鸟的问题!!很容易拿分!! 我用utl_smtp发送邮件时,中文的就变成乱码了?急需高手指点!(1000分) parallel 的数值参数怎么设置? 求个SQL语句
A
----------
90%
40%
10%
30%
50%
SQL>
SQL> SELECT * FROM testt
2 ORDER BY to_number(replace(a,'%',''))
3 desc;
A
----------
90%
50%
40%
30%
10%
SQL>
--先将不完整转换成0%,然后去掉%排序
select * from test
order by
to_number(replace(decode(recode,'不完整','0%',recode),'%','')) desc
ORDER BY TONUMBER
SELECT * FROM testt
ORDER BY to_number(translate(a,'²»ÍêÕû%',''))
desc;
ORDER BY to_number(translate(a,'不完整%',''))
desc;