SQL 中的轉換函式
有時 SQL 查詢可能期望某種資料型別,但它卻得到了另一種資料型別。在這種情況下,SQL 會執行型別轉換。這稱為隱式型別轉換。但是,有時程式設計師會在查詢中顯式地將一種資料型別轉換為另一種資料型別。這稱為顯式型別轉換。下面將詳細介紹這兩種型別轉換。
隱式資料型別轉換
在隱式資料型別轉換中,SQL 程式設計師無需指定任何內容。系統會根據其需要將一種資料型別轉換為另一種資料型別。例如,如果需要,可以將數字資料型別轉換為字元型別,反之亦然。
只有當查詢中使用的資料型別有效時,隱式資料型別轉換才會發生,以便系統能夠識別它們並根據需要進行轉換。對於無效或錯誤提供的資料型別,這將無法實現。
顯式資料型別轉換
如果程式設計師希望,他們可以顯式地將資料型別從一種形式轉換為另一種形式。為此,SQL 提供了一些函式。這些 SQL 函式包括:
TO_CHAR
此函式用於將數字或日期資料型別顯式轉換為字元型別。
此函式的語法如下所示:
TO_CHAR(number,format,parameters)
此函式根據語法中提供的特定格式將數字更改為字元型別。可以使用引數來指定小數字符、組分隔符等。
例如:
SELECT CHAR(sysdate, “Month DD,YYYY”) FROM DUAL;
這將返回 2018 年 7 月 31 日格式的系統日期。
TO_NUMBER
此函式用於將字串顯式轉換為數字。如果要轉換的字串不包含數字字元,則 TO_NUMBER 會顯示錯誤。
此函式的語法如下所示:
TO_NUMBER(number,format,parameters)
此函式根據語法中提供的特定格式將給定的字串更改為數字。
引數和格式是可選的,因此可以將字串轉換為數字。
例如:
TO_NUMBER (‘353.78’);
這將返回 353.78 字串的數字格式。
TO_DATE
此函式接受字元值並以日期格式返回輸出。
此函式的語法如下所示:
TO_DATE(number, format, parameters)
此函式根據語法中提供的特定格式將給定的字串更改為數字。
SELECT TO_DATE(‘2018/07/31’,’yyyy/mm/dd’) FROM DUAL;
此函式接受字元格式的值,並將其以指定的日期格式返回。
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP