Thread: Create Calendar
Dear All,
How to create Calendar using Function/View.
For example i would like to display date 2004-12-01 to 2004-12-20.
date
------
2004-12-01
2004-12-02
2004-12-03
2004-12-04
2004-12-05
..................
..................
2004-12-20
On Sat, Dec 11, 2004 at 03:26:33AM +0800, Muhyiddin A.M Hayat wrote: > How to create Calendar using Function/View. > For example i would like to display date 2004-12-01 to 2004-12-20. You could write a function that returns SETOF DATE. Some sections of the documentation you'll want to study are: "Data Types" chapter, "Date/Time Types" section "Functions and Operators" chapter, "Date/Time Functions and Operators" section "PL/pgSQL - SQL Procedural Language" chapter, especially the "Control Structures" section If you have trouble then please post what you've tried with an explanation of how you'd like it to work and a description of what actually happens. -- Michael Fuhr http://www.fuhr.org/~mfuhr/
Muhyiddin A.M Hayat wrote: > How to create Calendar using Function/View. > For example i would like to display date 2004-12-01 to 2004-12-20. > > date > ------ > 2004-12-01 > 2004-12-02 > 2004-12-03 > 2004-12-04 > 2004-12-05 > .................. > .................. > 2004-12-20 -- Use in Postgres 7.4.x and earlier. -- In Postgres 8.0.0 generate_series() is a built-in function CREATE OR REPLACE FUNCTION generate_series(int, int) RETURNS setof int AS ' BEGIN FOR i IN $1..$2 LOOP RETURN NEXT i; END LOOP; RETURN; END; ' LANGUAGE plpgsql; select '2004/12/01'::date + f1 from generate_series(0, 19) as t(f1); ?column? ------------ 2004-12-01 2004-12-02 2004-12-03 2004-12-04 2004-12-05 [...] 2004-12-20 (20 rows) HTH, Joe