【发布时间】:2015-12-25 11:34:52
【问题描述】:
我担心以下查询的性能:
SELECT
MAX(CAST((CONVERT(bigint, DBTimeStamp)) AS decimal)) AS DBTimeStamp
FROM Category
WHERE DepartmentID = 5
有没有更快的方法从表中获取最大/最新时间戳作为整数?
【问题讨论】:
-
只需使用
SELECT MAX(CAST(DBTimestamp AS BIGINT)) ....... -
注意,从 SQL 2005 开始不推荐使用 TIMESTAMP,您应该尽可能使用/参考 ROWVERSION。查找最新(最大值)值的快速方法是访问 @@DBTS 函数,但这是针对每个数据库而不是表。
-
我正在使用 2005 数据库,我无法更改其结构,所以我必须坚持这一点,但谢谢。我会记住更新版本
标签: sql-server timestamp max bigint