![]() |
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似乎是的默认转换格式
|
![]() |
Jack Skeletron · T-SQL三表求和 6 年前 |
![]() |
CSK · 列出sql server中存储过程中的存储过程 6 年前 |
![]() |
DRT · 从文本字段中提取多个日期 6 年前 |
![]() |
ihatemash · 确定可以合并哪些行的SQL查询 6 年前 |
![]() |
Shawn · 使用WinZip命令行的SQL Server作业 6 年前 |