获取 Postgres 中 3 个月前的所有记录

发布于 2024-09-28 06:25:23 字数 239 浏览 2 评论 0原文

我需要在 Postgres 中找到恰好 3 个月前的所有记录

我的查询如下所示。

SELECT * FROM 添加 WHERE adtype = 'CL' AND DATEDIFF(dstart,DATE(now())) = DATE_SUB(curdate(),间隔 3 个月);

但这似乎不起作用。任何有关此查询的建议帮助都会有所帮助。我可以在 PHP 中计算这个值,但想使用 Postgres 查询找出该值。

I need to find all records that are exactly 3months old in Postgres

My query looks as follows.

SELECT * FROM adds WHERE adtype = 'CL' AND DATEDIFF(dstart,DATE(now())) = DATE_SUB(curdate(),interval 3 month);

But this does not seem to work. Any advise help with this query will be helpful. I can calculate this in PHP but want to find out the value using a Postgres query.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

药祭#氼 2024-10-05 06:25:23
  1. 您正在将一个时间段与一个时间点进行比较。
  2. Postgres 中真的有 DATEDIFF 吗?
  3. 您确定需要 3 个月前那一天的记录吗?不寻常的应用。

我建议:WHERE DATE(dstart) = DATE(NOW())-INTERVAL '3 Month'

  1. You are comparing a time period to a point in time.
  2. Is there really a DATEDIFF in Postgres?
  3. Are you sure you need the records of that one day exactly 3 months in the past? Unusual application.

I'd suggest: WHERE DATE(dstart) = DATE(NOW())-INTERVAL '3 month'

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文