想知道是否有人可以帮助一些Postgres。我有一个表有一个名为mydate
的列,这是一个postgres日期类型。我想做点什么:
SELECT * FROM MyTable WHERE mydate > [Today-1year]
我之前从未使用过Postgres,我确信我只需要知道一些函数的名称 - 我很乐意自己查阅引用。有人能指出我正确的方向吗?
谢谢!
答案 0 :(得分:125)
select * from mytable where mydate > now() - interval '1 year';
答案 1 :(得分:55)
我认为这样做会:
SELECT * FROM MyTable WHERE mydate > now()::date - 365;
答案 2 :(得分:8)
这应该给你当前日期减去1年:
select now() - interval '1 year';
答案 3 :(得分:3)
您还可以使用age()
功能
select * from mytable where age( mydate, now() ) > '1 year';
age()
将返回一个间隔。
例如age( '2015-09-22', now() )
将返回-1 years -7 days -10:56:18.274131