why*_*heq 7 sql-server sql-server-2012
DATETIME&INTEGER和DATE&INTEGER之间的关系是否一致?
执行得很好:
DECLARE @Yesterday DATETIME = GETDATE();
SELECT @Yesterday-1;
Run Code Online (Sandbox Code Playgroud)
就像这样:
DECLARE @Yesterday DATE = GETDATE();
SELECT @Yesterday;
Run Code Online (Sandbox Code Playgroud)
这个错误:
DECLARE @Yesterday DATE = GETDATE();
SELECT @Yesterday-1;
Run Code Online (Sandbox Code Playgroud)
我可以安全地integer从a中减去一个类型datetime而不是从a中减去一个类型date.
这种行为的原因是什么?
实际上,它非常一致.DATETIME是从以前版本的sql server继承的类型.自2008年版以来,DATETIME2已经推出了添加/减去整数的可能性.您仍然可以将其DATETIME作为遗产来实现.
DATE就像DATETIME2自2008年以来一直存在,对于这种类型,也禁止添加/减少数字.
这会给你一个错误:
DECLARE @Yesterday DATETIME2 = GETDATE();
SELECT @Yesterday-1;
Run Code Online (Sandbox Code Playgroud)
所以一切都很好:).
| 归档时间: |
|
| 查看次数: |
2102 次 |
| 最近记录: |