*select sum(case when extract(dow from t.d) in (1,2,3,4,5) then 1 else 0 end) * 8 as hours* * from generate_series(current_date::date, (current_date + '10 days'::interval), '1 day'::interval) as t(d)*
*This calculates the working days/hours between 2 dates. You can make your firt/lastr day of the month/year to a date and feed it into the series.* *Bye Uwe* Am Mi., 28. Aug. 2019 um 00:27 Uhr schrieb stan <st...@panix.com>: > I am just starting to explore the power of PostgreSQL's time and date > functionality. I must say they seem very powerful. > > I need to write a function that, given a month, and a year as input returns > the "work hours" in that month. In other words something like > > 8 * the count of all days in the range Monday to Friday) within that > calendar month. > > Any thoughts as to the best way to approach this? > > > -- > "They that would give up essential liberty for temporary safety deserve > neither liberty nor safety." > -- Benjamin Franklin > > >