次のMYSQL文を実行しますが、10行を返しますが、10秒以上を費やします。ところで、LIMIT 0、10を削除すると、1,000,000行が返されます。私はSceneCode列に対してIndex1を作成し、ProviderId列に対してIndex2を作成しました。制限文のパフォーマンスチューニング方法は?
SELECT *
FROM
(SELECT * FROM gf_sceneprovider WHERE SceneCode='DL00000003' ) AS sprovider
LEFT JOIN (SELECT * FROM gf_sceneprovidertemplate WHERE SceneCode='DL00000003' ) AS stemplate
ON sprovider.ProviderId = stemplate.ProviderId
INNER JOIN gf_provider AS provider
ON provider.ProviderId = sprovider.ProviderId
LIMIT 0, 10
したがって、ルールなしで10個のレコードを取得したいですか?もしそうなら、おそらくあなたは左の結合の前に 'gf_sceneprovider'を制限しようとすることができます – Prisoner