Search Postgresql Archives

Re: Date for a week day of a month

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

 



generate_series that's a good one!

Thank you!


On 7/3/07, Emi Lu <emilu@xxxxxxxxxxxxxxxxx> wrote:

Can I know how to get the date of each month's last Thursday please?
Query:  select getDateBaseOnWeekday('2007-04-01', 'Last Thursday');
Result: 2007-04-26


you can easily do it without functions.
for example, this select:
SELECT
   cast(d.date + i * '1 day'::interval as date)
FROM
   (select '2007-04-01'::date as date) d,
   generate_series(0, 30) i
WHERE
   to_char(d.date, 'MM') = to_char( cast(d.date + i * '1 day'::interval as
date), 'MM')
   AND to_char(cast(d.date + i * '1 day'::interval as date), 'D') = '5'
ORDER BY 1 DESC
LIMIT 1
;
does what you need.
to get last-thursday for another month, just change: (select
'2007-04-01'::date as date) d, to be 1st of any other month.

depesz




[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