Sql Server數據類型轉換函數
Sql Server數據類型轉換函數是Sql中最重要的函數之一,下面就為您介紹Sql Server數據類型轉換函數的詳細使用,供您參考,希望對您有所幫助。
在一般情況下,SQL Server 會自動完成數據類型的轉換,例如,可以直接將字符數據類型或表達式與DATATIME 數據類型或表達式比較當表達式中用了INTEGER、 SMALLINT或TINYINT 時,SQL Server 也可將INTEGER 數據類型或表達式轉換為SMALLINT數據類型或表達式,這稱為隱式轉換。如果不能確定SQL Server 是否能完成隱式轉換或者使用了不能隱式轉換的其它數據類型,就需要使用數據類型轉換函數做顯式轉換了。此類函數有兩個:
・CAST()
CAST() 函數語法如下:
CAST (<expression> AS <data_ type>[ length ])
・CONVERT()
CONVERT() 函數語法如下:
CONVERT (<data_ type>[ length ], <expression> [, style])
提醒: 1、data_type為SQL Server系統定義的數據類型,用戶自定義的數據類型不能在此使用。
2、length用于指定數據的長度,缺省值為30。
3、把CHAR或VARCHAR類型轉換為諸如INT或SAMLLINT這樣的INTEGER類型、結果必須是帶正號(+)或負號(-)的數值。
4、TEXT類型到CHAR或VARCHAR類型轉換最多為8000個字符,即CHAR或VARCHAR數據類型是***長度。
5、IMAGE類型存儲的數據轉換到BINARY或VARBINARY類型,最多為8000個字符。
6、把整數值轉換為MONEY或SMALLMONEY類型,按定義的國家的貨幣單位來處理,如人民幣、美元、英鎊等。
7、BIT類型的轉換把非零值轉換為1,并仍以BIT類型存儲。
8、試圖轉換到不同長度的數據類型,會截短轉換值并在轉換值后顯示“+”,以標識發(fā)生了這種截斷。
用CONVERT() 函數的style 選項能以不同的格式顯示日期和時間。style 是將DATATIME 和SMALLDATETIME 數據轉換為字符串時所選用的由SQL Server 系統提供的轉換樣式編號,不同的樣式編號有不同的輸出格式。
例子:
CAST([字段名] as varchar(4000))
CONVERT(varchar(4000),[字段名])
【編輯推薦】