我正在尝试运行一个查询,该查询使我可以查看在过去30天内交付中运行的脚本早于3个月的地方,因此我们知道需要对其进行更新。 我已经能够构建查询以向我显示所有脚本及其上次重新生成日期(带有特定日期),但是无法解决;
示例表
ddply(df
, as.quoted(colnames(df))
, function(x) {if size>=3 return(size) else return(total_bill+tip)
)
以下示例无法满足我的需求。我的想法是,我将获得当前日期(使用now()),然后知道这一点,请查看过去30天中的所有数据。 之后,我将在哪里,-3月(因此date_regen从当前日期开始3个月以上)。 但是我无法正常工作。我还考虑过尝试-几天,但也没有成功。
visit_datetime | client | script | date_regen |
2019/10/04 03:32:51 | 1 | script1 | 2019-09-17 13:12:01 |
2019/09/27 03:32:52 | 2 | script2 | 2019-07-18 09:44:02 |
2019/10/06 03:32:50 | 3 | script3 | 2019-03-18 14:08:02 |
2019/10/02 06:28:24 | 4 | script6 | 2019-09-11 10:02:01 |
2019/03/01 06:28:24 | 5 | script7 | 2019-02-11 10:02:01 |
我当前用于获取表格的代码
-- WHERE MONTH = MONTH(now()) AND YEAR = YEAR(now())
-- WHERE date_regen <= DATEADD(MONTH,-3,GETDATE())
-- WHERE DATEDIFF(MONTH, date_regen, GetDate()) >= 3
结束目标 我应该只看到客户端3,因为客户端1 + 2 + 4的标签中的date_regen在过去3个月内,而客户端5的visit_datetime超出了30个限制。
SELECT split_part(js,'#',1) AS script,
date_regen,
client
FROM table
WHERE YEAR=2019 AND MONTH=10 AND DAY = 01 (This where is irrelevant as I would need to use now() but I don't know what replaces "YEAR/MONTH/DAY ="
GROUP BY script,date_regen,client
ORDER BY client DESC;
答案 0 :(得分:0)
我认为您想要简单的过滤:
select t.*
from t
where visit_datetime >= current_timestamp - interval 30 day and
date_regen < add_months(current_timestamp, -3)