我有一个包含超过 400 万条记录的数据库,我想在不进行全表扫描的情况下选择当前月份的记录。
我在数据库上创建了日期索引,但性能仍然很慢
SELECT sum(scores) as total
FROM customers
WHERE YEAR(date_created) = YEAR(CURDATE())
AND MONTH(cam_date) = MONTH(CURDATE());
代码可以运行,但需要时间来加载
最佳答案
您可以尝试将日期分成三个单独的列 - 年、月和日。搜索整数会更快,然后只搜索日期,但将所有 400 万条记录更改为该方案可能需要一些时间。
关于php - 选择当月的记录而不进行全表扫描,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56458235/