我有2个表foo2和foo3与下面的图片。这些表具有唯一的列 - >标识。MySQL JOIN与MySQL IN与子查询
表foo2的:
表foo3:
我想从同一个ID两个表选择数据。我有2个这样的查询
QUERY1:
SELECT
foo2.id,
foo2.`name`
FROM
foo2
WHERE foo2.id IN (SELECT id FROM foo3);
QUERY2:
SELECT
foo2.id,
foo2.`name`
FROM
foo2
INNER JOIN foo3 ON (foo2.id = foo3.id);
这些查询返回相同的数据。我想知道哪一个更好?哪一个是有效的?
感谢您的回答。
取决于数据。对于大数据,联接通常更好。 –
query1 cuz' join'执行执行 – Jenish
使用'EXPLAIN'查看查询规划器告诉你的内容:https://dev.mysql.com/doc/refman/5.7/en/using-explain.html –