我正在尝试获取两个日期之间的记录。以下是我的查询
select * from my_data
where name = 'customer' AND
(time between (('2021-03-24'::date - '1 month'::interval) AND '2021-03-24'::date))
然而,我得到了一个语法错误
ERROR: syntax error at or near ")"
LINE 1: ...03-24'::date - '1 month'::interval) AND '2021-03-24'::date))
^
编写查询以返回比给定日期早1个月的行的正确方法是什么?
您可以去掉括号:
select *
from my_data
where name = 'customer' AND
time between '2021-03-24'::date - '1 month'::interval AND '2021-03-24'::date;
具体问题是between
的范围不接受parens。