SELECT
s and Other Queries
EXPLAIN
Syntax (Get Information About a SELECT
)
SELECT
Queries
WHERE
Clauses
IS NULL
DISTINCT
LEFT JOIN
and RIGHT JOIN
ORDER BY
LIMIT
INSERT
Queries
UPDATE
Queries
DELETE
Queries
SELECT
s and Other QueriesFirst, one thing that affects all queries: The more complex permission system setup you have, the more overhead you get.
If you do not have any GRANT
statements done, MySQL will
optimise the permission checking somewhat. So if you have a very high
volume it may be worth the time to avoid grants. Otherwise, more
permission check results in a larger overhead.
If your problem is with some explicit MySQL function, you can always time this in the MySQL client:
mysql> SELECT BENCHMARK(1000000,1+1); +------------------------+ | BENCHMARK(1000000,1+1) | +------------------------+ | 0 | +------------------------+ 1 row in set (0.32 sec)
The above shows that MySQL can execute 1,000,000 +
expressions in 0.32 seconds on a PentiumII 400MHz
.
All MySQL functions should be very optimised, but there may be
some exceptions, and the BENCHMARK(loop_count,expression)
is a
great tool to find out if this is a problem with your query.
EXPLAIN
Syntax (Get Information About a SELECT
)SELECT
QueriesWHERE
ClausesIS NULL
DISTINCT
LEFT JOIN
and RIGHT JOIN
ORDER BY
LIMIT
INSERT
QueriesUPDATE
QueriesDELETE
Queries