感谢花在了我的问题,对不起,如果它已经时间已经问过类似的东西。PHP - MySQL的1.000.000记录查询优化
我有一个DB的下面的示意图:
我只为DB SELECT权限。 而我的查询往往会在当前设置下运行2-3秒到10秒。 有人问我,优化至最佳配置的当前结构和我的SQL是这样的:(我需要获得所有的订单,其为1个月的间隔内对每种产品的总收入)
SELECT items.`type` AS type,
DATE(orders.date) AS date,
sum(items.price * orders.quantity * clients.discount_percent/100) AS total
FROM orders
INNER JOIN items ON orders.item = items.id
INNER JOIN clients ON orders.`client` = clients.id
GROUP BY DATE(orders.date), items.`type`
我正在考虑通过修改SQL方面的数据来处理结果 - 但不确定它是否会有效。
很想听听形成雅,如果这可以优化:)。
KR, 昏头昏脑
附: EXPLAIN结果: EXPLAIN
你有索引日期列(也是项目,客户端)吗? – Maadinsh
你对这些表有什么指标? EXPLAIN为这个查询显示什么? –
你应该从获得解释计划开始。但是,如果你不被允许创建索引,它会很有趣。 –