tachyon has asked for the wisdom of the Perl Monks concerning the following question:
I have a table in a MySQL database that I need to optimise the speed of searching on. It looks like this:
CREATE TABLE some_table ( key CHAR(50), val1 CHAR(10), val2 INT, PRIMARY KEY (key) )
The select that has to run against it is very simple and looks like
SELECT * FROM some_table WHERE key = ? OR key = ? OR key = ?
There are no like operators and the statement handles are all prepare cached and cached themselves with the bind values passed to the execute as needed. Implicit in the MySQL docs is the notion that a B-tree index is automatically created for the primary key. It is not however explicit. So the question is does a primary key need an index to optimise search speed?
Having just written this the obvious answer is just to test it I guess. Still I am lazy enough to seek the wisdom of the monks as a shortcut...
cheers
tachyon
s&&rsenoyhcatreve&&&s&n.+t&"$'$`$\"$\&"&ee&&y&srve&&d&&print
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: MySQL Select Speed Optimisation
by gmax (Abbot) on Mar 27, 2003 at 10:04 UTC | |
by tachyon (Chancellor) on Mar 27, 2003 at 10:58 UTC | |
by IlyaM (Parson) on Mar 27, 2003 at 11:36 UTC | |
by VSarkiss (Monsignor) on Mar 27, 2003 at 15:59 UTC | |
|
Re: MySQL Select Speed Optimisation
by simon.proctor (Vicar) on Mar 27, 2003 at 11:00 UTC | |
|
Re: MySQL Select Speed Optimisation
by dws (Chancellor) on Mar 27, 2003 at 17:31 UTC | |
|
Re: MySQL Select Speed Optimisation
by davis (Vicar) on Mar 27, 2003 at 09:55 UTC |