Beefy Boxes and Bandwidth Generously Provided by pair Networks vroom
The stupid question is the question not asked
 
PerlMonks  

Re: DBI - retrieving a specific row

by beebware (Pilgrim)
on Feb 04, 2002 at 08:04 UTC ( [id://143223]=note: print w/replies, xml ) Need Help??

This is an archived low-energy page for bots and other anonmyous visitors. Please sign up if you are a human and want to interact.


in reply to DBI - retrieving a specific row

I think this will be DB specific, but I know on MySQL you can use select * from table LIMIT 3,1 just to get the fourth result.

Personally, if you are going to be accessing the data sequentially (ie first row, second row etc), you may as well do it in a loop as it will be a lot more effecient on the database servers cache system (it should 'anticipate' that you will request the next record, but if you then start a new query it may dump the cached data).

Replies are listed 'Best First'.
Re: Re: DBI - retrieving a specific row
by S_Shrum (Pilgrim) on Feb 05, 2002 at 05:54 UTC

    Ahhh...LIMIT sound like just what I need.

    Makes sense that it wouldn't be in the DBI book...need to get me the SQL book.

    Thanx for the suggestions all.

    Sean

      I would recommend you getting SQL In A Nutshell (O'Reilly) - I've only had it 3 months and it's alreeady quite thumbed and bent. Page 149 gives SELECT...LIMIT as a MySQL specific and PostgreSQL specific functions, the syntax is:
      MySQL: SELECT * FROM table_name LIMIT (starting_row-1),number_of_rows
      PostgreSQL: SELECT * FROM table_name LIMIT number_of_rows,(starting_row-1)
      Don't get the two different parameter orders mixed up!

      If you aren't using either of these databases (have a look at this comparision table between them if need be), use might be able to use stored procedures to do the job. For a database-independent way, you'll be best having a function within your script in which you loop round to get the data you require.

Re: Re: DBI - retrieving a specific row
by S_Shrum (Pilgrim) on Feb 07, 2002 at 06:27 UTC
    Ack! It appears that SQL::Statement does not support a LIMIT method (or at least as far as I can tell; it fails in the script call and I can't find any references to LIMIT in the SQL::Statement code. Any other ideas?

    ======================
    Sean Shrum
    http://www.shrum.net

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://143223]
help
Sections?
Information?
Find Nodes?
Leftovers?
    Notices?
    hippoepoptai's answer Re: how do I set a cookie and redirect was blessed by hippo!
    erzuuliAnonymous Monks are no longer allowed to use Super Search, due to an excessive use of this resource by robots.