Search Postgresql Archives

Re: How can I replace the year of the created_at column with the current year dynamically ?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 07/01/2014 11:27 PM, Arup Rakshit wrote:
Here is my try :

staging::=> select  to_char(created_at,'DD/MM') || '/' || to_char(now(),'YYYY') as when from users;
    when    
------------
 24/02/2014
...
 20/02/2014
(15 rows)

Can the same be done using any other clever trick ? 


No tricks are springing to mind but a warning is. The above will produce illegal dates whenever you are an inconvenient number of years past February 29. I think this will fix that issue:

select created_at + ((extract(year from now()) - extract(year from created_at)) * '1 year'::interval);

Note that the above returns a date (assuming that created_at is a date). You may need to apply to_char to format to your desired specification.

Cheers,
Steve


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux