【发布时间】:2021-02-17 22:42:59
【问题描述】:
我有一个表,其中有很多行,最多 1000000。和 300 列
问题:我想知道获取表中“LastModifiedDate”列的最大日期的最快方法。
在我的表中,我有以下列:Id、LastModifiedDate 和其他列...
提前感谢您的帮助
【问题讨论】:
标签: sql sql-server azure-sql-database
我有一个表,其中有很多行,最多 1000000。和 300 列
问题:我想知道获取表中“LastModifiedDate”列的最大日期的最快方法。
在我的表中,我有以下列:Id、LastModifiedDate 和其他列...
提前感谢您的帮助
【问题讨论】:
标签: sql sql-server azure-sql-database
如果插入的记录是最新的LastModifiedDate ,并且这个LastModifiedDate列写入表后不会改变。
我认为您可以在LastModifiedDate 列上创建一个聚集索引。在聚集表中,SQL Server 聚集索引用于存储根据聚集索引键值排序的数据行。你可以参考这个文档Designing effective SQL Server clustered indexes。
【讨论】:
在列上放一个索引并使用:
select max(LastModifiedDate)
from t;
如果您想要日期最大的完整行:
select top (1) t.*
from t
order by LastModifiedDate desc;
【讨论】: