Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment augmenter la vitesse de cette analyse de données ?

Vous ne montrez pas votre structure de clé, bien qu'elle montre que site_id fait partie d'une clé en plusieurs parties (MUL ). notez que s'il ne s'agit pas du champ FIRST dans cette clé en plusieurs parties, la clé ne peut pas être utilisée pour cette clause where. par exemple si vous avez

KEY somekey (field1, site_id, field3, ...)

alors votre clause where doit inclure les DEUX field et site_id pour que cette clé soit utilisable dans la requête. Vous n'êtes pas obligé d'utiliser les champs dans le même ordre qu'ils sont répertoriés dans la clé (where site_id=.. and field1=... fonctionnera de la même manière que where field1=... and site_id=... ), mais puisque field1 apparaît avant site_id dans la définition de la clé, vous devez également l'utiliser pour que la clé entière soit utilisable.

Il en va de même pour votre q champ. Il doit également être le premier dans les clés couvertes, sinon ces clés sont inutilisables.