当前位置 : 主页 > 网络编程 > ASP >

asp.net – “SELECT * FROM …”VS“SELECT ID FROM …”性能

来源:互联网 收集:自由互联 发布时间:2021-06-24
参见英文答案 select * vs select column12个 作为一个比SQL更新的人,因为我没有太多使用它,我确信这个问题有答案,但我不知道要搜索什么,所以我道歉. 问题:如果我在一个包含许多列的数据
参见英文答案 > select * vs select column                                    12个
作为一个比SQL更新的人,因为我没有太多使用它,我确信这个问题有答案,但我不知道要搜索什么,所以我道歉.

问题:如果我在一个包含许多列的数据库中有一堆行但只需要获取更快的ID或它们是否具有相同的速度?

SELECT * FROM...

VS

SELECT ID FROM...
您特别询问了性能与避免SELECT *的所有其他原因:所以我将限制我的答案.

在我的系统上,SQL事件探查器最初为仅ID查询指示较少的CPU开销,但是涉及较小的#或行,每个查询花费相同的时间.

我认为这只是因为首先运行仅限ID的查询.在重新运行时(以相反的顺序),它们同样占用了很少的CPU开销.

以下是SQL事件探查器中的事物视图:

由于列数和行数极高,行数极宽,数据库引擎可能存在明显的差异,但这里没什么明显的.

您真正看到的区别在于将结果集发送回网络!当然,仅ID的结果集通常会小很多 – 即少发回.

网友评论