我使用以下mysql查询来获取一些期望的结果,但问题是它需要更多时间。目前这个查询的执行时间是7456毫秒这是我的项目无法接受的,我想优化这个查询任何想法?mysql查询优化左连接
SELECT *, DATEDIFF(NOW(),ticketstatus_tbl.updation_date) AS problem_age,images_tbl.image_path
FROM ticketstatus_tbl
LEFT JOIN question_tbl ON ticketstatus_tbl.question_id = question_tbl.question_id
LEFT JOIN ticketing_tbl ON ticketstatus_tbl.related_ticket_id = ticketing_tbl.ticket_id
LEFT JOIN department_tbl ON question_tbl.question_dept = department_tbl.department_id
LEFT JOIN branch_tbl ON ticketstatus_tbl.branch_id = branch_tbl.id
LEFT JOIN images_tbl ON images_tbl.question_id = ticketstatus_tbl.question_id and images_tbl.branch_id = ticketstatus_tbl.branch_id
WHERE (ticketstatus_tbl.ticket_status NOT IN ('Close')
AND question_tbl.is_active_question = 1
AND ticketstatus_tbl.display_status = '1'
AND ticketstatus_tbl.flag_color = 'Yellow'
AND department_tbl.department_name = 'Admin')order by ticket_number ASC LIMIT 0 ,5
感谢
请张贴你在表格上的索引和查询的解释。 –
表结构和EXPLAIN输出,或者不期望有意义的答案。 http://dev.mysql.com/doc/refman/5.6/en/explain.html – Mchl
将索引放在ON子句中使用的列上通常会帮助很多人。当然,你在数据库中没有其他奇怪的事情发生。这就是为什么我们可能需要更多信息来帮助你。 – Hless