我正试图调整WHERE子句的条件,以便在日期过滤器中容纳相对定义的日期。我很困惑我需要使用什么类型,是CONVERT还是to_DATE函数,或者是否需要在代码中放入CASE WHEN语句。
这是我迄今为止写的代码:
WHERE event_create_verified_user_success.created_at_utc_date
BETWEEN DATE '2021-11-29' AND DATE '2021-12-05'
这就是我需要完成的活动的条件:
如果没有使用固定日期(如"2021-11-29"(手动设置所需的日期段对于"2021-12-05",您将如何更改where子句以考虑相对定义的日期:"考虑10天到5天前(包括10天(创建的消息">
我昨天才开始使用PostgreSQL,上一次处理SQL可能是在4年前,所以我很困惑从那以后SQL发生了多大的变化。
非常感谢你的帮助!
在过去的4年(甚至15年(里,基本语法没有真正改变。
您可以使用CCD_ 1来获得";今天的日期";。你可以从中减去天数
where ... between current_date - 10 and current_date - 5
如果created_at_utc_date
是timestamp
(=date和时间(而不是date
(=date没有时间(,则最好使用范围查询:
where created_at_utc_date >= current_date - 10
and created_at_utc_date < current_date - 4
请注意<
与要比较的下一天的组合。