[英]MySQL query optimization JOIN
我需要您的帮助来优化那些mysql查询,它们都在我的慢速查询日志中。
SELECT a.nom, c.id_apps, c.id_commentaire, c.id_utilisateur,
c.note_commentaire, u.nom_utilisateur
FROM comments AS c
LEFT JOIN apps AS a ON c.id_apps = a.id_apps
LEFT JOIN users AS u ON c.id_utilisateur = u.id_utilisateur
ORDER BY c.date_commentaire DESC LIMIT 5;
在c.id_apps,a.id_apps,c.id_utilisateur,u.id_utilisateur和c.date_commentaire上有一个MySQL索引。
说明结果:
id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra 1 | SIMPLE | c | index | NULL | date_commentaire | 8 | NULL | 119 | 1 | SIMPLE | a | eq_ref | PRIMARY | PRIMARY | 3 | c.id_apps | 1 | 1 | SIMPLE | u | eq_ref | PRIMARY | PRIMARY | 3 | c.id_utilisateur | 1 |
SELECT a.id_apps, a.id_itunes, a.nom, a.prix, a.resume, c.nom_fr_cat, e.nom_edit
FROM apps AS a
LEFT JOIN cat AS c ON a.categorie = c.id_cat
LEFT JOIN edit AS e ON a.editeur = e.id_edit
ORDER BY a.id_apps DESC LIMIT 20;
说明结果:
id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra 1 | SIMPLE | a | index | NULL | PRIMARY | 3 | NULL | 5336 | 1 | SIMPLE | c | eq_ref | PRIMARY | PRIMARY | 1 | a.categorie | 1 | 1 | SIMPLE | e | eq_ref | PRIMARY | PRIMARY | 3 | a.editeur | 1 |
在a.categorie,c.id_cat,a.editeur,e.id_edit和a.id_apps上有一个MySQL索引
谢谢
谢谢你们,对不起马塞洛,这是我第一次参加Stackoverflow
使用EXPLAIN的第一个查询:
id select_type表的类型possible_keys键key_len参考行额外
1个SIMPLE C索引NULL date_commentaire 8 NULL 119
1个简单的eq_ref主PRIMARY 3 c.id_apps 1
1个简单U eq_ref PRIMARY PRIMARY 3 c.id_utilisateur 1
第二
id select_type表的类型possible_keys键key_len参考行额外
1 SIMPLE a index NULL PRIMARY 3 NULL 5336
1 SIMPLE c eq_ref主PRIMARY 1 a。类别1
1 SIMPLE e eq_ref PRIMARY PRIMARY 3 a.editeur 1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.