前端之家收集整理的这篇文章主要介绍了
sql – LEFT JOIN与多个SELECT语句,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在研究别人的
PHP代码,一遍又一遍地看到这种模式:
(伪代码)
result = SELECT blah1,blah2,foreign_key FROM foo WHERE key=bar
if foreign_key > 0
other_result = SELECT something FROM foo2 WHERE key=foreign_key
end
如果另一个表中没有相关的行,代码需要分支,但是通过在单个SELECT语句中执行LEFT JOIN,这不能更好吗?我错过了一些性能优势吗?便携性问题?或者我只是在挑剔?
没有足够的信息来真正回答这个问题.我曾致力于减少
查询次数的应用程序,原因之一是由于其他原因而
增加了
查询次数,这些都提高了
性能.在同一个应用程序中!
对于表大小,数据库配置的某些组合以及查询外表的频率,执行这两个查询可能比LEFT JOIN快得多.但经验和测试是唯一可以告诉你的事情.具有中等大小的表的MysqL似乎是可以接受的,IME.在一个表上执行三个查询通常比一个查询加快三个查询要快得多.我已经看到了一个数量级的加速.
原文链接:https://www.f2er.com/mssql/83147.html