【发布时间】:2013-02-16 23:51:16
【问题描述】:
我很想知道调用 LEFT JOIN 而没有加入任何内容的查询惩罚会是什么。
我有两个表:main 有 .ID、.type 和 .info、additional 有 .ID 和 .more_info
我正在运行这个查询:
SELECT main.*, additional.* FROM main LEFT JOIN additional ON main.ID = additional.ID
我很清楚 70% 的时间,我将查询一个 没有其他信息的 main.type -- additional 中没有条目,但由于为了限制,我总是必须包含 LEFT JOIN 语句。
这会导致多少查询惩罚(时间)——如果有的话?
例如是:
SELECT * FROM main WHERE type = 'no additional'
将明显快于:
SELECT main.*, additional.* FROM main LEFT JOIN additional ON main.ID = additional.ID WHERE main.type = 'no additional'?
【问题讨论】:
标签: mysql performance join