使用SQL Server - 这是用于日期检索的最快或最佳实践方法?有区别吗?
答案 0 :(得分:91)
CURRENT_TIMESTAMP是标准的ANSI SQL,因此理论上如果你需要移动数据库,那么在你的数千个特定于SQL Server的SQL行中,“不需要改变”就是一个小小的岛屿。
答案 1 :(得分:31)
CURRENT_TIMESTAMP是ANSI SQL规范的一部分。 GETDATE()是一个SQL Server特定的函数,继承自SQL Server所基于的原始Sybase代码。
但他们完全一样。
答案 2 :(得分:10)
我的投票是CURRENT_TIMESTAMP
的'可移植性'原因,例如,当存在直接的SQL-92等效时,为什么是SQL Server特定的?
PS为什么没有命名为getdatetime()
?既然SQL Server 2008具有DATE
和TIME
数据类型,我们希望能够获得对SQL-92的CURRENT_DATE
和CURRENT_TIME
的支持,此时{{1}可能会更加混乱。
答案 3 :(得分:9)
联机丛书告诉我们CURRENT_TIMESTAMP“等同于GETDATE()”。