試試吧

Version >= SQL Server 2012

它將字串資料型別轉換為目標資料型別(日期或數字)。

例如,源資料是字串型別,我們需要轉換為日期型別。如果轉換嘗試失敗,則返回 NULL 值。

語法:TRY_PARSE(string_value AS data_type [USING culture])

String_value - 這個引數是源值,它是 NVARCHAR(4000) 型別。
Data_type - 此引數是目標資料型別,可以是日期或數字。
文化 - 它是一個可選引數,有助於將值轉換為文化格式。假設你要以法語顯示日期,則需要將文化型別作為“Fr-FR”傳遞。如果你不傳遞任何有效的文化名稱,那麼 PARSE 將引發錯誤。

DECLARE @fakeDate AS varchar(10);  
DECLARE @realDate AS VARCHAR(10);  
SET @fakeDate = 'iamnotadate'; 
SET @realDate = '13/09/2015';   

SELECT TRY_PARSE(@fakeDate AS DATE); --NULL  as the parsing fails

SELECT TRY_PARSE(@realDate AS DATE); -- NULL due to type mismatch

SELECT TRY_PARSE(@realDate AS DATE USING 'Fr-FR'); -- 2015-09-13