0

TOP 究竟是如何工作的?

我已经完成了TOP(Transact-SQL)。我了解 TOP 用于限制结果集。但我不明白的是,假设我指定Select Top(10) from Table where some condition它在处理表中的前 10 条记录后停止,该表可能只包含符合条件的 5 条记录,或者它会先处理所有记录,然后返回结果集的前 10 条记录。

4

2 回答 2

0

是的,第二个假设是正确的。

首先它将处理所有记录,然后返回结果集的前 10 条记录。

数据库引擎将忽略TOP子句运行查询,然后最后将该结果集缩小到所请求的n行数。

于 2013-04-06T05:11:51.840 回答
0

正确答案存在于这个线程中。实际上,SQL Server 2008 使用不同的模型来执行查询。

于 2015-11-09T09:36:39.277 回答