从MySQL中的多个表中进行选择时,以下两个查询都返回相同的结果集.
其中一个查询比另一个查询更好还是更有效?从我对小数据集的测试(每个表中约2k行),它们都在大约相同的执行时间内返回相同的结果集.
查询1:
SELECT
*
FROM
products,
product_meta,
sales_rights
WHERE
(
products.id = product_meta.product_id
AND products.id = sales_rights.product_id
)
AND (...)
LIMIT 0,10;
Run Code Online (Sandbox Code Playgroud)
查询2:
SELECT
*
FROM
products
INNER JOIN product_meta ON products.id = product_meta.product_id
JOIN sales_rights ON product_meta.product_id = sales_rights.product_id
WHERE
(...)
LIMIT 0,10;
Run Code Online (Sandbox Code Playgroud)