Oracle中用SQL語句如何實現進制間互相轉換?
首先,字符串必須是數字形式的字符串,如“12345”或“-12345”等。然后需要用to_number函數進行轉換。如:
1select to_number('12345') from dual;這樣就將字符轉成了數字,并可以參與加減乘除的運算。
這個你估計得自定義函數了,不能直接用to_number創建函數12345678910create or replace function isNumber(p in varchar2)return numberistest number;begintest := to_number(p)
;return test;exceptionwhen VALUE_ERROR then return 0;end;測試1,純數字測試2 帶非數字的字符測試3,負數測試4 小數測試5 0總之就是測試5和測試2的結果是一樣,這個你看你打算怎么解決吧拓展資料有沒有小數點?如果有小數點的話SELECT trunc(to_number('1234,56897'),2) from dual如果全是整的話,那么就是select to_number('1234,56897'),2) from dual