我的问题是以下内容在MSSQL中的大型数据集上是否可靠:
select top 1 * from table order by row_id
我想知道是否有一些阈值,当满足时将从一组数据中返回前 1 名。例如,如果有一个包含数百万行的表,并且如果返回的行确实是顶行,或者它是该数据子集的顶行,则运行上面的查询。
只要有一个"order by"子句,它既一致又可靠。
您可以基于变量进行控制,如下所示:
declare @i int = 1
select top(@i) * from NumSeq order by col1
基于变量@i它将返回该数量的记录