Thanks for your input. Especially Tod for breaking it down at the hard ware
level and making me realize what is possible.
I have re-evaluated how this is going to work. Instead of trying this with
one query, I am using 2. I forget somethimes that MySQL is better at
running simple queries really fast than complex single queries.
I am now using Full-Text indexing (people will just have to upgrade) to
retrieve any id of a row matching my search criteria eg.
select id from single_table where MATCH (body,author,subject) AGAINST
('search criteria')
I then read all those id in from the results. That takes .2 seconds on my
server. I then feed those results (current 4450 rows) into a second query.
select id from single_table where approved='Y' and id in ( big id list )
order by datestamp desc
That query takes .2 seconds. id is the primary key so look ups on it are
really fast. There is a key on approved, datestamp as well.
>From that I have the rows I am looking for. All in .4 seconds. This is
with 1Mil+ rows. The speed is consistent for all search criteria.
Brian Moon
Phorum Dev Team
---------------------------------------------------------------------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)
To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php