在子查询或主查询中,哪个更好?

时间:2017-06-05 21:18:44

标签: mysql sql sqlperformance

简化示例1:

SELECT * FROM (
    SELECT x, y, z FROM table1
    WHERE x = 'test'
    -- union, etc, etc, complicated stuff...
) AS t
-- union, etc, etc, complicated stuff...

简化示例2:

SELECT * FROM (
    SELECT x, y, z FROM table1
    -- union, etc, etc, complicated stuff...
) AS t
-- union, etc, etc, complicated stuff...
WHERE x = 'test'

以上哪项更受欢迎?性能更高?是出于其他原因推荐?在进行联合和类似操作之前,“早期”过滤结果是否有帮助?感谢。

1 个答案:

答案 0 :(得分:1)

在MySQL中,您肯定需要子查询中的过滤条件。 MySQL实现了子查询。子查询越小,查询越快。

此外,MySQL可以使用条件索引。