在 SQL Server 中使用 OPENJSON 解析 JSON 字符串时,如果日期字段为空,则 SQL 返回 1900-01-01。
DECLARE @dt [date]
SELECT @dt=dt
FROM OPENJSON('{"dt":""}')
WITH (dt [date] '$.dt')
PRINT @dt
输出:
1900-01-01
我怎样才能防止这种情况发生?我能想到的一种方法是检查结果值,如果它是“1900-01-01”,则重置为 NULL。虽然我不希望实际日期是 1900-01-01 但这对我来说看起来不正确。我在 SQL 语法中遗漏了什么吗?