Out of curiosity, why doesn't the idea I proposed work?  If there's a
situation where it doesn't work I'd like to know, so I don't try using
it myself should a similar situation arise. :)

   -Tom

> -----Original Message-----
> From: Brown, Dave [mailto:[EMAIL PROTECTED] 
> Sent: Thursday, May 19, 2005 11:52 AM
> To: sqlite-users@sqlite.org
> Subject: RE: [sqlite] How to get row numbers in a query?
> 
> So I guess I have to write my own function, "current_row()", using the
> sqlite3_create_function() APIs?
> 
> -Dave 
> 
> -----Original Message-----
> From: Jay Sprenkle [mailto:[EMAIL PROTECTED] 
> Sent: Thursday, May 19, 2005 8:40 AM
> To: sqlite-users@sqlite.org
> Subject: Re: [sqlite] How to get row numbers in a query?
> 
> > 
> >    Are you sure this is true?  The rowid in the source table has no 
> > relationship to the order of the results of the query.
> 
> You're right. I thought it was the row number of the result 
> set, it's not:
> 
> D:\temp\convention>sqlite3 test.db
> SQLite version 3.0.8
> Enter ".help" for instructions
> sqlite> create table t1(
>    ...>     Id                INTEGER PRIMARY KEY,
>    ...>  value text );
> sqlite> insert into t1(value) values('one'); insert into t1(value) 
> sqlite> values('two'); insert into t1(value) values('three'); insert 
> sqlite> into t1(value) values('four'); select * from t1;
> 1|one
> 2|two
> 3|three
> 4|four
> sqlite> select rowid, value from t1 where id>2;
> 3|three
> 4|four
> sqlite>
> 
> Dave, Looks like rowid gives you the order of insertion not 
> the order of
> retrieval.
> 
> 

Reply via email to