作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要运行一个查询,它将:
数据
date value reportDate
1-8-2017 142 1-8-2017
2-8-2017 69 1-8-2017
3-8-2017 57 1-8-2017
4-8-2017 44 1-8-2017
date value reportDate
1-8-2017 136 2-8-2017
2-8-2017 139 2-8-2017
3-8-2017 104 2-8-2017
4-8-2017 66 2-8-2017
所需结果
Report Date: 2-8-2017
date value Delta
1-8-2017 136 -6
2-8-2017 139 70
3-8-2017 104 47
4-8-2017 66 22
我知道我可以通过在获取日期行后在循环内运行另一个查询来进行计算。但我想在单个查询中进行计算。数据非常大,有数百万条记录,并且每天都在增长。
我想尽可能地优化查询,因为它是系统的瓶颈,并且系统在为每行运行每个查询时会卡住。基本上我在当前按每一行计算时无法做任何事情。
最佳答案
单个查询将是这样的。我希望 date
和 reportDate
列上有一个索引:
SET @date := '2017-08-02';
SELECT t1.date, t2.value, t2.value - t1.value AS delta
FROM test AS t1
JOIN test AS t2 ON (t1.date = t2.date)
WHERE t2.reportDate = @date
AND t1.reportDate = DATE_SUB(@date, INTERVAL 1 DAY);
关于php - MySQL 计算 future 6 个月与之前上传日数据的增量(差异),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47457668/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!