SQL查询执行时间,SQL Server,嵌套查询



我的查询如下:

SELECT Brand,Id,Model FROM product

按几秒钟顺序为产品表具有超过100万条记录。

但是查询在不到时间内执行。(什至不到一秒钟)

select count(*) as numberOfRows from (SELECT Brand,Id,Model FROM product) result

为什么?

执行查询时,所花费的时间会根据列和行的数量及其数据类型而有所不同。

在您有10列的表中,如果您为所有记录选择所有列(*),则性能将有所不同,所有记录只有1或两个列。因为在第二种情况下,加载的数据量较小,因此执行速度更快。

这样,当您说计数(*)时,结果只是一个单元格,而在第一个选择中,您选择了这3列的数百万行,因此数据量很高。

这就是为什么您要更快地获得计数(*)结果。您不需要在计数内给予 *,而只需使用计数(1)即可获得更好的性能。

相关内容

  • 没有找到相关文章

最新更新