On Fri, 2007-02-23 at 19:25 +0100, Stefan Becker wrote:
> dear SQL friends,
> 
> What I want to do might be done differantly.  Right now I can't
> think of another solution other than a select statement
> 
> I would like to create a sequence range of integer constants.  Join
> this sequence against a ID Range in a database and look for missing
> Id's.   
> 
> Another application for this would be to simply populate a database with
> say 1000..9999 Records....
> 
> Now:  Is there a syntax that allows for the following.....
> 
> create table XX (id int);
> insert into XX (select  xx from "1 to 1000" of integers)
> 
> or...
> 
> select IntSeq.MissingValues, x.UniqIntId,x.A,x.B,x.C, 
> from MyDataTable x
> left outer join 
> (
>  select  MissingValues from "1 to 1000" of integers
> ) IntSeq on MissingValues=x.UniqIntId
> 
> 
> I'm hoping that someone has done this and might be able to
> point to some function or methode to do this

Maybe something like this will help:

SELECT id
FROM generate_series(1, (SELECT last_value FROM id_seq)) AS s(id)
EXCEPT
SELECT UniqIntId FROM MyDataTable
ORDER BY id;

The id_seq is the sequence on your ID column, assuming it has one, or
you can replace the (SELECT ... FROM id_seq) by 1000.

Joe


---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

               http://archives.postgresql.org

Reply via email to