TO_NUMBER函數(shù)是Oracle SQL中的一個(gè)內(nèi)置函數(shù),用于將字符型數(shù)據(jù)轉(zhuǎn)換為數(shù)值型數(shù)據(jù)。它的語(yǔ)法如下:
TO_NUMBER(string, [format_mask], [nls_language])
參數(shù)說明:
示例:
SELECT TO_NUMBER('12345') AS num FROM dual;
-- 輸出結(jié)果為:
-- num
-- ----
-- 12345
在上面的示例中,TO_NUMBER函數(shù)將字符型數(shù)據(jù)’12345’轉(zhuǎn)換為數(shù)值型數(shù)據(jù)12345。
另外,TO_NUMBER函數(shù)還可以配合format_mask參數(shù)使用,比如將帶有千位分隔符的字符串轉(zhuǎn)換為數(shù)值型數(shù)據(jù):
SELECT TO_NUMBER('12,345.67', '999G999D99', 'NLS_NUMERIC_CHARACTERS = '',.''') AS num FROM dual;
-- 輸出結(jié)果為:
-- num
-- ----
-- 12345.67
在這個(gè)例子中,TO_NUMBER函數(shù)使用了format_mask參數(shù)’999G999D99’,以及nls_language參數(shù)’NLS_NUMERIC_CHARACTERS = ‘’,.‘’',將帶有千位分隔符的字符串’12,345.67’轉(zhuǎn)換為數(shù)值型數(shù)據(jù)12345.67。