DATETIME&INTEGERとDATE&INTEGERの関係は一貫していますか?
これは正常に実行されます。
DECLARE @Yesterday DATETIME = GETDATE();
SELECT @Yesterday-1;
これがそうであるように:
DECLARE @Yesterday DATE = GETDATE();
SELECT @Yesterday;
このエラー:
DECLARE @Yesterday DATE = GETDATE();
SELECT @Yesterday-1;
integer
からタイプを安全に減算できますが、からは減算できdatetime
ませんdate
。
この動作の理由は何ですか?