PostgreSQL,检查相对于“今天”的date
想知道是否有人可以帮助一些Postgres。 我有一个表,它有一个名为mydate
这是一个postgresdatetypes的列。 我想做一些事情:
SELECT * FROM MyTable WHERE mydate > [Today-1year]
我从来没有用过Postgres,我确信我只需要知道一些函数的名字,我会很乐意自己查阅这个引用。 任何人都可以指向正确的方向吗?
谢谢!
select * from mytable where mydate > now() - interval '1 year';
我认为这将做到这一点:
SELECT * FROM MyTable WHERE mydate > now()::date - 365;
这应该给你当前的date减去1年:
select now() - interval '1 year';
你也可以使用age()
函数来检查
select * from mytable where age( mydate, now() ) > '1 year';
age()
返回一个时间间隔。
例如, age( '2015-09-22', now() )
将返回- -1 years -7 days -10:56:18.274131
请参阅postgresql文档