我知道我可以从今天开始接收日期,例如
选择CURRENT_DATE - INTERVAL' 1个月';
但如果我需要指定的第一个日期怎么办?像
这样的东西选择' 2017-05-08 00:00:00' - INTERVAL' 1个月'?
我尝试了不同的东西,无法让它发挥作用。
答案 0 :(得分:1)
您可以使用:
select '2017-05-08 00:00:00'::DATE - '1 month'::INTERVAL
/\
|
cast as date
<强> DBFiddle Demo 强>
答案 1 :(得分:1)
'2017-05-08 00:00:00'
是一个字符串文字。您需要将其转换为日期,例如,使用to_date
:
SELECT TO_DATE('2017-05-08','yyyy-mm-dd') - INTERVAL '1 months'