在 SQL 中使用 DATEADD() 筛选最近 3 个月的数据

Filtering data for the last 3 months using DATEADD() in SQL

我正在尝试显示过去三个月的数据,因此使用了

SELECT my_date::date AS my_date, my_col
FROM my_table     
WHERE my_date >= DATEADD(MONTH, -3, GETDATE())
GROUP BY my_date
ORDER BY my_date DESC

但是我得到以下错误

ERROR:  column "month" does not exist
LINE 10: WHERE process_date >= DATEADD(MONTH, -3, GETDATE())
                                       ^
SQL state: 42703
Character: 651

我不确定为什么它不喜欢 MONTH,我正在尝试使用 DATEADD(),如此处所示 https://www.w3schools.com/sql/func_sqlserver_dateadd.asp DATEADD(interval, number, date).

我应该如何过滤过去 3 个月的数据以及为什么 DATEADD() 似乎不起作用?

感谢@VvdL 的评论。

PostgreSQL 使用不同的命令。更改为以下并有效。

WHERE my_date >= current_date - INTERVAL '3 months'