php - 对大型 MySQL 表的多个查询

标签 php mysql sql query-optimization

我有一个表,其中包含列 ID(整数)、数字(十进制)和日期(仅整数时间戳)。有数百万行。 ID 和 Date 上有索引。

在我的许多页面上,我查询了四到五次以获取指定日期范围内的数字列表(每次查询的范围不同)。

喜欢:

select number,date where date < 111111111 and date >111111100000

我正在查询要放置在几个不同图表上的这些数据集。 “今天对比昨天”、“本月对比上个月”、“今年对比去年”。

使用 sql 语句查询最大可能的结果集,然后使用我的编程语言通过排序和拼接数组过滤查询是否比等待这些 0.3 秒查询中的每一个查询完成更好?

还有其他方法可以加快速度吗?

最佳答案

这取决于结果集和查询的执行速度。这个问题没有最终答案。

如果您真的需要加快速度,您应该进行基准测试并计算结果。

但请记住 premature optimization应该避免,除了你将在你的代码中实现一个已经实现的逻辑,它可能包含错误等。

关于php - 对大型 MySQL 表的多个查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6960616/

相关文章:

javascript - 数据表中的多个子行

php - symfony2以管理员用户身份访问私有(private)文件

php - ICS 文件格式是否允许更新和删除事件?

sql - 从 "YYYY-MM"varchar 自动转换到 PostgreSQL 中的日期

php - 检索查询中的相似项目

php - 学说查询中唯一的商店ID

php - mysql按降序查找处于不同状态的条目数

mysql - 从列中删除前 3 个字母

sql - 在 Ruby 中使用 SQL 文件

sql - 我想在 sql server 中检索半年的一天