> CREATE OR REPLACE FUNCTION your_week2date(double precision, double
> precision) RETURNS SETOF date
> AS
> $_$
> SELECT day
> FROM (
> SELECT (
> date_trunc('week', ($1::text||'-01-01')::date)
> + ($2::text||' week')::interval
> + ( d::text||' day')::interval
> )::date AS day
> FROM generate_series(0, 6) AS d
> ) alias
> WHERE to_char(day, 'IYYY')::integer = $1
> ORDER
> BY 1
> $_$
> LANGUAGE SQL
> IMMUTABLE
I think it is better to use date_part('year', day) instead of
to_char(...). And may be it is worth to do raise exception when
incorrect week specified.
--
Sergey Konoplev
Blog: http://gray-hemp.blogspot.com /
Linkedin: http://ru.linkedin.com/in/grayhemp /
JID/GTalk: gray.ru@gmail.com / Skype: gray-hemp / ICQ: 29353802