2017-06-05 3 views
0

簡略化した例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

MySQLでは、サブクエリのフィルタ条件を間違いなく欲します。 MySQLはサブクエリを実現します。サブクエリが小さければ小さいほどクエリは速くなります。

さらに、MySQLは条件のインデックスを使用できる場合があります。

関連する問題