Je me demandais si quelqu'un pouvait aider avec certains Postgres. J'ai une table qui a une colonne appelée mydate
qui est un type de date postgres. Je veux faire quelque chose comme:
SELECT * FROM MyTable WHERE mydate > [Today-1year]
Je n'ai jamais utilisé Postgres auparavant et je suis sûr que je dois juste connaître le nom de certaines fonctions. Je me ferai un plaisir de rechercher la référence moi-même. Est-ce que quelqu'un peut-il me montrer la bonne direction?
Merci!
select * from mytable where mydate > now() - interval '1 year';
Si vous vous souciez seulement de la date et non de l'heure, remplacez current_date
Par now()
Je pense que ça va le faire:
SELECT * FROM MyTable WHERE mydate > now()::date - 365;
Cela devrait vous donner la date actuelle moins 1 an:
select now() - interval '1 year';
Vous pouvez aussi vérifier en utilisant la fonction age()
select * from mytable where age( mydate, now() ) > '1 year';
age()
retournera un intervalle.
Par exemple, age( '2015-09-22', now() )
retournera -1 years -7 days -10:56:18.274131