iT邦幫忙

0

sql error

執行sql時,出現
Lookup Error - SQL Server Database Error: 將 varchar 資料類型轉換成 datetime 資料類型時,產生超出範圍的值。

可能原因是?

DECLARE @a DATETIME
SET @a = '0001/1/1 12:00:00'
DECLARE @b DATETIME
SET @b = '2020/7/7 23:59:00'
DECLARE @c DATETIME
SET @c = '2020/12/31 23:59:00'
DECLARE @d DATETIME
SET @d = '2020/7/7 12:00:00'

WHERE ( NOT (((CASE WHEN ([Filter1].[aa] IS NOT NULL) THEN [Filter1].[aa] ELSE @a END) > @b) 
    OR ((CASE WHEN ([Filter1].[bb] IS NOT NULL) THEN [Filter1].[bb] ELSE @c END) < @d)))

1 個回答

6
listennn08
iT邦高手 7 級 ‧ 2020-07-07 11:13:49
最佳解答

SQL Server 能接受的最早年份是 1753 年

demo
reference

看更多先前的回應...收起先前的回應...

耶,今天又學到了新知識了
/images/emoticon/emoticon41.gif

那問一下,以下三種格式,那一種是正確的?

SET @a = '2020/01/31 11:59 PM'
SET @b = '2020/01/31 01:59:00'
SET @c = '2020-01-31 01:59:00'

都正確,sql 會自動轉成 24 小時制

感謝回應

我要發表回答

立即登入回答