我的mysql数据库中有3个表,
其中2个具有10,000+行,第3个具有100+行。
我的查询是
SELECT `deals`.`name`,
`deals`.`id` as `deals_id`,
`reports`.`dealid`,
`reports`.`pdeealnum`,
`reports`.`pconfirmed`,
`reports`.`pdate`,
`reports`.`ppay`,
`reports`.`pfname`,
`reports`.`plname`,
`reports`.`pmail`,
`reports`.`paddress`,
`reports`.`pphone`,
`reports`.`pdate`,
`orders`.`id` as `coupon`,
`orders`.`dealid`
FROM `deals`
LEFT JOIN `reports` ON `reports`.`dealid` = `deals`.`id`
LEFT JOIN `orders` ON `orders`.`dealid` = `deals`.`id`
WHERE `reports`.`pdate` >= '".strtotime($_POST['start_date'])."'
AND `reports`.`pdate` <='".strtotime($_POST['end_date'])."'
ORDER BY `reports`.`pdate` DESC
我如何管理选择的大量数据而不会导致站点卡死或失败?
最佳答案
确保您的dba将适当的索引添加到pdate字段。
然后,如果发现遇到性能问题,请研究提高性能的更高级方法。诸如在应用程序中进行分页,分区表等之类的事情。
关于php - 如何管理从多个表中选择许多数据?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6804406/