Joe Celko's method to "generate_series" not working?

From: Richard Broersma Jr <rabroersma(at)yahoo(dot)com>
To: SQL Postgresql List <pgsql-sql(at)postgresql(dot)org>
Subject: Joe Celko's method to "generate_series" not working?
Date: 2007-05-03 00:17:07
Message-ID: 649296.88043.qm@web31815.mail.mud.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Well, I am about a book and a-half away from reading all of the Joe Celko's books that I know of.
I just came across an nice looking way to generate a series using a set oriented construct.
However, I am not able to get it to work in PostgreSQL.

The method follows from the SQL Programming Style p.164:

SELECT hundred * 100 + ten * 10 + unit + 1
FROM ( VALUES( 0, 1, 2, 3, 4, 5, 6, 7, 8, 9)) AS Units( unit )
CROSS JOIN
( VALUES( 0, 1, 2, 3, 4, 5, 6, 7, 8, 9)) AS Tens( ten )
CROSS JOIN
( VALUES( 0, 1, 2, 3, 4, 5, 6, 7, 8, 9)) AS Hundreds( hundred );

but I am getting:

?column?
----------
1
(1 row)

which isn't close to the 1000 rows that I am expecting.

Is Mr. Celko mistaken? Does anyone know if PostgreSQL has any functions that I can turn these
VALUES rows into columns so that the CROSS JOINS will work?

Regards,
Richard Broersma Jr.

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Richard Broersma Jr 2007-05-03 00:35:02 Re: Joe Celko's method to "generate_series" not working?
Previous Message Richard Albright 2007-05-02 19:26:23 Re: Possible to access value in RECORD without knowing column name?