mysql - 根据日期限制大表

标签 mysql date limit

我有一个包含 500 万行的表,我只想获取字段 date 在两个日期(date1 和 date2)之间的行。我试过了

select column from table where date > date1 and date < date2

但是处理时间真的很大。有没有更聪明的方法来做到这一点?也许直接访问一行并仅在该行之后进行查询?我的意思是,有没有办法丢弃与日期期间不匹配的大部分表格?或者我必须逐行阅读并比较日期?

最佳答案

通常您会在检索结果之前应用某种条件。如果您没有任何要过滤的内容,您可能需要使用 LIMITOFFSET:

SELECT * FROM table_name WHERE date BETWEEN ? AND ? LIMIT 1000 OFFSET 1000

通常,您将LIMIT限制为您希望在特定页面上显示的任意数量的记录。

关于mysql - 根据日期限制大表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12922311/

相关文章:

mysql - 为什么 MYSQL 更高的 LIMIT 偏移量会减慢查询速度?

PHP, MySQL select, order by field and group it

php - 通过ajax发送PHP变量

vba - 对于仅使用时间初始化的 Date 变量,默认日期不是我所期望的

javascript - toLocaleDateString 在 TypeScript 中不起作用?

azure - 暂时增加 Azure 数据资源管理器中 .set 引入查询的限制

mysql - 重新启动死锁事务时导致后续错误的原因是什么?

php - 在android中使用php从mysql数据库获取数据

java - SimpleDateFormat 添加几分钟

mysql - 如何将一个大表导出为 50 个较小的 csv 文件,每个文件包含 100,000 条记录