在drupal网站上我们得到sql查询数据导出非常慢(长时间)问题如何解决问题
查询如下
SELECT DISTINCT(a.*), c.nid, b.uac_inst_campus_cricos
FROM uac_export_coursetable_latest AS a
LEFT JOIN uac_institutiondata AS c
ON c.uac_institutiondata_institution = a.uac_course_institution
LEFT JOIN uac_inst_campus_latest AS b
ON b.nid = c.nid AND b.uac_inst_furtherinfobox_heading = a.campusname
WHERE a.uac_course_institution = '6628'
AND intyear12 = 'Yes'
ORDER BY uaccoursecode
答案 0 :(得分:0)
因为我们不知道自定义表的确切模式,所以我们无法为您提供精确的解决方案,但通常在查询执行速度较慢时,您需要验证用于{{1}的列。并且在JOINS
clausule内。
在您的情况下,我会在以下列中添加索引:WHERE
(uac_institutiondata_institution
表),uac_institutiondata
(intyear12
),uac_export_coursetable_latest
({{ 1}}表)
如果nid
表中的uac_inst_campus_latest
列不是主键,也是此列上的索引。
有关MySql数据库上的索引的更多信息:http://dev.mysql.com/doc/refman/5.0/en/create-index.html