-- ╔══════════╗
-- ===================================== ║ Cast 函數轉換 ║
-- ╚══════════╝
-- CAST() 函數語法如下:
-- CAST (<expression> AS <data_ type>[ length ])
/*
【0】、convert在進行日期轉換時還提供了豐富的樣式,cast只能進行普通的日期轉換
【1】、data_type爲SQL Server系統定義的數據類型,用戶自定義的數據類型不能在此使用。
【2】、length用於指定數據的長度,缺省值爲30。
*/
-- ★ 實例 ★
select convert(nvarchar,123) --返回123
select N'年齡:'+convert(nvarchar,23)
-- 返回 年齡:23(注意:如果想要在結果中正確顯示中文需要在給定的字符串前面加上N,加N是爲了使數據庫識別 Unicode字符)
select convert(nvarchar ,getdate())
-- 返回04 28 2009 10:21PM
select convert(nvarchar ,getdate(),101)
-- 返回04/28/2009
select convert(nvarchar ,getdate(),120)
-- 返回2009-04-28 12:22:21
select convert(nvarchar(10) ,getdate(),120)
-- 返回2009-04-28
-- ╔══════════╗
-- ================================= ║ CONVERT 函數轉換 ║
-- ╚══════════╝
-- CONVERT() 函數語法如下:
-- CONVERT (<data_ type>[ length ], <expression> [, style])
/*
【0】、convert在進行日期轉換時還提供了豐富的樣式,cast只能進行普通的日期轉換
【1】、data_type爲SQL Server系統定義的數據類型,用戶自定義的數據類型不能在此使用。
【2】、length用於指定數據的長度,缺省值爲30。
*/
-- ★ 實例 ★
select cast(123 as nvarchar) -- 返回123
select N'年齡:'+cast(23 as nvarchar) -- 返回 年齡:23
-- ╔══════════╗
-- ==================================== ║ 參 數 說 明 ║
-- ╚══════════╝
/*
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、試圖轉換到不同長度的數據類型,會截短轉換值並在轉換值後顯示“+”,以標識發生了這種截斷。
*/