我有php项目列表。
我正在从我的sql数据库中获取一个数组。
一切正常,但最近的记录正在增加,并且突然没有在列表中显示记录。
建议!
我尝试了内部联接,但记录较少,这很正常
查询是:
SELECT farmer.*, state.state_name, videos.video_url, employee.name AS nm
FROM farmer
LEFT JOIN state ON state.id = farmer.state
LEFT JOIN videos ON videos.farmer_id = farmer.id
LEFT JOIN employee ON farmer.employee_id = employee.id
WHERE farmer.is_deleted = 0
ORDER BY farmer.id DESC;
答案 0 :(得分:0)
要调试MySQL如何执行此查询,请使用EXPLAIN
解决此类问题的一种简单方法是正确使用indexes
。
EXPLAIN
的输出,确定执行联接时正在使用哪个column ref
。CREATE INDEX index_name ON table_name (col_name); -- for composite key you can mention multiple columns.
如何帮助:
参考:
Optimize Queries for Speed & Performance-具有explain
输出及其说明的快速指南。
要进一步提高查询性能,请查看官方文档中的MySQL Performance Optimization部分。