![]() |
1
6
似乎自动参数化是造成不一致的原因。 在线图书 documents 在可以自动参数化查询的情况下,如果发生隐式转换或没有指定样式的显式转换,则样式0会错误地应用于新的日期/时间类型。没有TOP的查询是自动参数化的(显示参数[@1]而不是时间文本)。TOP是阻止自动参数化的(许多)查询特性之一。
|
![]() |
2
1
奇怪的。我复制了yoru代码,删除了注释,删除了对日期的添加,结果两者都很好。
|
![]() |
3
1
我可以复制,SQL 2008 R2 x64。
因此,我猜它与tempdb中的spools、内部表示和本地化表示以及应该发生的自动来回切换有关,但在这种情况下不可能。
|
![]() |
4
1
这看起来像一个bug;我可以在2008 x64开发人员上重现。 我确实发现了一些非常奇怪的事情;将另一个日期(或datetime)添加到varchar cast到查询中会导致格式标准化。所以:
(注意在两个查询中都添加了转换变量@d)
格式121似乎是的默认转换格式
|
![]() |
John D · 需要为NULL或NOT NULL的WHERE子句 7 月前 |
![]() |
Marc Guillot · 记录值时忽略冲突 7 月前 |
![]() |
Fachry Dzaky · 正确使用ROW_NUMBER 7 月前 |
![]() |
TriumphTruth · 从满足特定条件的数据集中选择1行 8 月前 |