审查超过 3 个月和最近 30 天内的脚本

Posted

技术标签:

【中文标题】审查超过 3 个月和最近 30 天内的脚本【英文标题】:Review scripts which are older than 3 months and in the last 30 days 【发布时间】:2019-10-06 14:30:58 【问题描述】:

我正在尝试运行一个查询,让我可以看到在过去 30 天的交付时间里,我们在哪里运行了超过 3 个月的脚本,因此我们知道它们需要更新。 我已经能够构建查询以向我显示所有脚本及其最后重新生成日期(输入了特定日期),但无法解决;

    如何仅查看最近 30 天的数据。 如何仅查看 date_regen 列距今天日期超过 3 个月的脚本 - 来自我正在查看的最近 30 天的数据。

示例表

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  |

以下示例无法满足我的需求。我的想法是我会得到当前日期(使用 now()),然后知道这一点,查看过去 30 天内的所有数据。 之后,我会在 WHERE 月,-3 个月(所以 date_regen 从当前日期起 3 个月以上。 但是我无法让它工作。我还考虑尝试做 -days,但也没有成功。

-- WHERE MONTH = MONTH(now()) AND YEAR = YEAR(now())
-- WHERE date_regen <= DATEADD(MONTH,-3,GETDATE())
-- WHERE DATEDIFF(MONTH, date_regen, GetDate()) >= 3

我目前用来获取表格的代码

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;

最终目标 我应该只看到客户端 3,因为客户端 1+2+4 有标签,其中 date_regen 在过去 3 个月内,客户端 5 的 visit_datetime 超出了 30 个限制。

visit_datetime      | client | script  |   date_regen           |
2019/10/06 03:32:50 | 3      | script3 |   2019-03-18 14:08:02  |

【问题讨论】:

什么是数据中的“脚本”? 嗨,戈登,很抱歉含糊不清。本例中的脚本是“js2”列,它是我分解的长字符串。我将编辑我的帖子以使其更清晰 【参考方案1】:

我想你想要简单的过滤:

select t.*
from t
where visit_datetime >= current_timestamp - interval 30 day and
      date_regen < add_months(current_timestamp, -3)

【讨论】:

将此添加到查询返回 0 行。我会采纳你的建议,看看它是否独立于查询的其余部分来获得结果。

以上是关于审查超过 3 个月和最近 30 天内的脚本的主要内容,如果未能解决你的问题,请参考以下文章

SQL 服务器管理工​​作室审查脚本,如 MySQL Workbench

不及格直接开!马斯克代码审查后又裁50人,只发1个月遣散费

代码审查的 10 个经验教训

Java源码安全审查

审查过程中基于加密货币的操作系统应用程序

如何检查 iPhone 应用程序用户评价或审查的应用程序与否