mysql - SQL查询获取最近30天之前的记录(不是最近30天)

标签 mysql sql select intervals

我想查找最近 30 天的值与之前的最后 30 天的值的不同百分比。我已经得到了过去 30 天的值(value)总和。如何获取过去 30 天的总和?

这是选择最近 30 天总和的查询。

SELECT SUM(paymentAmount) as usd30day
FROM `tbl_pi_payment` 
WHERE currencyCode = 'USD' and renewalDate >= NOW() - INTERVAL 30 DAY

示例:今天是 10 月 25 日。 我有 10 月 25 日至 9 月 26 日的值总和。 现在我需要 9 月 26 日到 8 月 25 日的值总和

最佳答案

你可以尝试以下 -

SELECT SUM(case when renewalDate >= NOW() - INTERVAL 30 DAY paymentAmount else 0 end) as usd30day ,
SUM(case when renewalDate >= NOW() - INTERVAL 60 DAY and renewalDate < NOW() - INTERVAL 30 DAY paymentAmount else 0 end) as usd60day
FROM tbl_pi_payment
WHERE currencyCode = 'USD' 

关于mysql - SQL查询获取最近30天之前的记录(不是最近30天),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58553084/

相关文章:

c - 使用 select() 超时

c# - 是否有比我现在正在做的更有效的方法从 5 个表中获取数据?

mysql - 用户注销后是否应该从记录中清除 session 表?

sql - 比较两个 PostgreSQL 列,字符串由斜杠 "/"或圆括号 "( )"分隔

mysql - SQL计算最近7天支付的平均金额

sql - 使用 SQL 按句子中的单词位置(单词索引)排序

sql - MySQL count() 问题

html - 一旦你在多选 html 列表框中选择了一个项目,无论如何都取消选择

mysql - 检查模型范围内是否有 locale_restriction

mysql - 尝试安装 Livezilla 时 XAMPP MySQL 错误,主机或登录无效! 1045 : access denied for root@localhost