我有一列格式的 SQL Serverdd/mm/yy日期varchar。我正在嘗試將此字串轉換為日期,但得到
訊息 241,從字串轉換日期/時間時轉換失敗。
我試過CAST()了,,,,,,。TRY_CAST()_ TRY_CONVERT()_ 他們都沒有作業。CONVERTPARSE()TRY_PRASE()
這是我的代碼:
DECLARE @d varchar(50) = '13/09/22'
SELECT TRY_CONVERT(datetime, @d, 103) -- I have tried different formats to no avail.
我也嘗試過如下鑄造
SELECT TRY_CAST(@d AS datetime) -- Tried datetime2 as well, but all failing.
如果我將日期部分更改為 < 12,則轉換有效。這意味著 SQL Server 以某種方式將其解釋為mm/dd/yy?
謝謝
uj5u.com熱心網友回復:
CONVERT()如果您使用正確的掩碼,實際上可以:
SELECT CONVERT(datetime, '13/09/22', 3); -- 2022-09-13 00:00:00.000
問題是掩碼103假設是 4 位數的年份,而不是 2 位數的年份。對于dd/mm/yy格式為 2 位數的年份日期,請使用 mask 3。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/514585.html
上一篇:將不同的科學記數法轉換為數字
