關於oracle小數和整數混合排序錯誤問題

2022-02-28 14:58:46 字數 801 閱讀 1350

試過order by沒用

1.對整數的

order

by to_number(regexp_substr(欄位名,'

[0-9]*[0-9]

',1))

2.既有整數又有小數

order

by to_number(regexp_substr(欄位名,'

(((\d).\d+)|(\d+.(\d)|\d+))

',1))

以上都沒用的情況下

我使用 case when 將符號提出來

order

by to_number(case

when instr(你的字段,'

資料中含有哪些字元如~*&@#

')>

0then to_number(substr(你的字段,1,instr(你的字段,'

資料中含有哪些符號如~*&@#

')-1))+

0.00001

else to_number(你的字段) end)

例如

order

by to_number(case

when instr(區間,'

~')>

0then to_number(substr(區間,1,instr(區間,'

~')-

1))+

0.00001

else to_number(區間) end)

分離整數和小數部分

程式 include include csdn學院 2016級 檔名稱 myfun8.c 完成日期 2016年10月25日 問題描述 編寫乙個程式,其功能為 從鍵盤上輸入乙個浮點數 小數點後有三位數 然後分別輸出該數的整數部分和小數部分。int main 輸出結果 知識點總結 主要運用了強制資料型別...

Oracle 小於1的小數丟失整數0

問題 oracle查詢 當小數小於1是,使用to char型別轉換會丟失整數0。例 0.33變為.33 仍然用to char函式對資料進行格式化轉換 select to char 0.567,fm9999999990.00 from dual 最終查詢結果為 0.57 注意 這裡是四捨五入保留兩位小...

過大的整數和小數運算誤差

biginteger i newbiginteger 引數為字串 例如 234234444444444444444234 常用方法1.加減乘除 加法 add bigdecimal bd 減法 subtract bigdecimal bd 乘法 multiply bigdecimal bd 除法 di...