首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以下哪种SQL查询速度更快?是两个表的连接还是连续查询?

问以下哪种SQL查询速度更快?是两个表的连接还是连续查询?
EN

Stack Overflow用户
提问于 2011-01-21 20:20:21
回答 4查看 349关注 0票数 3

我这里有两张表:

代码语言:javascript
复制
ITEMS
ID| DETAILS| .....| OWNER

USERS:
ID| NAME|....

Where ITEMS.OWNER = USERS.ID

我列出了这些项目以及它们各自的所有者名称。为此,我可以在两个表上使用连接,也可以选择所有项目并遍历它们,进行sql查询以检索该项目所有者的元组。这是这样的:

使用连接的1个sql查询与1x20个单表sql查询

就速度而言,哪种方法更好?谢谢

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-01-21 20:28:14

每个查询都有开销。如果你可以用一个查询做一些事情,那么(几乎)总是用一个查询做得更好。而且大多数数据库引擎都比你聪明。即使以某种方式拆分查询更好,数据库也会自己找出来。

一个开销的例子:如果你执行100个查询,你的应用程序和你的lot服务器之间会有更多的流量。

一般来说,如果你真的想知道一些关于性能的东西,可以对各种方法进行基准测试,测量你感兴趣的参数,并根据becnhmark的结果做出决定。

祝好运!

票数 3
EN

Stack Overflow用户

发布于 2011-01-21 20:21:55

当然,JOIN会更快。

进行20查询将意味着:

items

  • Returning

  • Parsing them 20

  • Making 20 index试图在20记录集(每个记录集都有自己的元数据)上查找索引范围的起点。
票数 6
EN

Stack Overflow用户

发布于 2011-01-21 20:23:15

执行连接会快得多,也是一种更好的做法

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4758712

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档