2
如果我在SQL Server表中有DATETIMEOFFSET
列,過濾結果到一定範圍的本地(不是UTC)日期的正確方法是什麼? 「本地」我的意思是日期邊界是相對於每個存儲值(它可能在行之間不同)的時區,而不是相對於單個固定的本地時區。將DATETIMEOFFSET列過濾到本地日期範圍
我認爲這不是這個,因爲DATE
文字將被認爲是UTC。正確?
WHERE EventTime >= '20140401' AND EventTime < '20140501'
那麼這是正確的解決方案嗎?
WHERE CAST (EventTime AS DATE) >= '20140401' AND CAST (EventTime AS DATE) < '20140501'
或者CAST函數是否阻止在EventTime
列上有效使用索引?如果是這樣,在DATETIMEOFFSET列的同一時區「對齊」日期文字的正確方法是什麼?