If your query is going to return a lot of rows, don't
use that method. Yes: you asked for *all* of the rows
(50_000 or whatever, using
fetchall_arrayref), so DBI
is going to fetch all of the rows. So now you've sent
50_000 rows between MySQL and yourself, and you've got a lot
of data stored in memory. :)
Which isn't too good a thing, meaning that, when you can,
you should use the LIMIT offset,rows technique. This way,
you're only ever sending rows rows between MySQL and
your script.