【问题标题】:T-SQL Updating rows with Current_timestampT-SQL 使用 Current_timestamp 更新行
【发布时间】:2011-05-02 09:37:52
【问题描述】:

也许是一个菜鸟问题,但请记住这个 T-SQL 查询

UPDATE Table
SET column = CURRENT_TIMESTAMP
WHERE condition

这需要 1 分钟。该列是否具有相同的时间戳值或增量? (随着时间的推移)?

如果你想让所有行的时间戳都相等,除了定义变量还有其他选择吗?

【问题讨论】:

    标签: tsql timestamp sql-update


    【解决方案1】:

    无论查询需要多长时间,它在所有行中都将具有相同的值。该函数在每个语句而不是每行计算一次。

    SQL Server 中几乎所有内置函数都是这种情况,我目前知道的唯一例外是 CRYPT_GEN_RANDOMNEWID

    【讨论】:

    • 无论如何.. 如果 NEWID 一直在生成相同的 GUID 显然会“打扰”我 ;)(或随机相同的值)
    • @PaN1C_Showt1Me - rand() 确实给出了相同的值。解决方法是使用新的crypt_gen_randomABS(CHECKSUM(NEWID()))
    猜你喜欢
    • 2017-04-09
    • 1970-01-01
    • 2013-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多