嘗試轉換

Version >= SQL Server 2012

它將值轉換為指定的資料型別,如果轉換失敗,則返回 NULL。例如,字串格式的源值,我們需要日期/整數格式。那麼這將有助於我們實現同樣的目標。

語法:TRY_CONVERT(data_type [(length)],expression [,style])

如果轉換成功,TRY_CONVERT() 返回一個轉換為指定資料型別的值; 否則,返回 null。

Data_type - 要轉換的資料型別。這裡 length 是一個可選引數,有助於獲得指定長度的結果。
表示式 - 要轉換的值
樣式 - 它是一個可選引數,用於確定格式。假設你想要像“May,18 2013”​​這樣的日期格式,那麼你需要傳遞樣式為 111。

DECLARE @sampletext AS VARCHAR(10);  
SET @sampletext = '123456';  
DECLARE @ realDate AS VARCHAR(10);  
SET @realDate = '13/09/2015’;  
SELECT TRY_CONVERT(INT, @sampletext); -- 123456  
SELECT TRY_CONVERT(DATETIME, @sampletext); -- NULL  
SELECT TRY_CONVERT(DATETIME, @realDate, 111); -- Sep, 13 2015