私はEXPLAINクエリから次のことを知っています。私はこれを使ってクエリのパフォーマンスを向上させる方法を知りません。私の質問は以下の通りです:MYSQLクエリがなぜ遅いのかわかりません
SELECT
`b`.`business_name` AS `Name`,
`b`.`address` AS `Address`,
`b`.`city` AS `City`,
`b`.`phone_number` AS `Phone`,
`b`.`state` AS `Prov`,
`i`.`date` AS `Last_Observed`,
group_concat(`v`.`notes` separator ', ') AS `Notes`,
`v`.`critical` AS `Criticality`,
`i`.`type` AS `Inspection_Type`,
`i`.`rating` AS `Rating`
FROM (`fs_v1_violation_table` `v`
LEFT JOIN (`fs_v1_inspection_table` `i`
LEFT JOIN `fs_v1_business_table` `b` ON((`b`.`id` = `i`.`business_id`)))
ON((`i`.`id` = `v`.`inspection_id`)))
WHERE `v`.`type` = 'Cleanliness' AND (
b.city = 'North Vancouver'
OR b.city = 'Vancouver'
OR b.city = 'White Rock'
OR b.city = 'West Vancouver'
OR b.city = 'Burnaby'
OR b.city = 'Langley'
OR b.city = 'Maple Ridge'
OR b.city = 'Delta'
OR b.city = 'Surrey')
GROUP BY `i`.`id`
ORDER BY `i`.`date` desc;
私はパフォーマンスを改善するためにどのような考えがありますか?クエリには約3分かかります。
試してみてください:https://dev.mysql.com/doc/refman/5.7/en/explain.html –
確認するには 'explain'メソッドを使用してください。 – urfusion
b.cityにインデックスを作成しよう –