Langzame query
Ik heb hier een mysql query die erg langzaam gaat.
Iemand enig idee waarom dat zo is ?
<?php
$sql = 'SELECT ' . $mysql_table_prefix . 'page.categorie, ' . $mysql_table_prefix . 'page.content AS korte_content, ' . $mysql_table_prefix . 'page.id, ' . $mysql_table_prefix . 'page.name, date_format(' . $mysql_table_prefix . 'page.updated,"%a, %d %b %Y %T") AS rssupdated , ' . $mysql_table_prefix . 'cat.cat
FROM ' . $mysql_table_prefix . 'page, ' . $mysql_table_prefix . 'cat
WHERE ' . $mysql_table_prefix . 'page.categorie > 1
AND ' . $mysql_table_prefix . 'page.categorie = ' . $mysql_table_prefix . 'cat.id
ORDER BY updated
DESC LIMIT ' . $posts;
?>
Iemand enig idee waarom dat zo is ?
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?php
$sql = 'SELECT ' . $mysql_table_prefix . 'page.categorie, ' . $mysql_table_prefix . 'page.content AS korte_content, ' . $mysql_table_prefix . 'page.id, ' . $mysql_table_prefix . 'page.name, date_format(' . $mysql_table_prefix . 'page.updated,"%a, %d %b %Y %T") AS rssupdated , ' . $mysql_table_prefix . 'cat.cat
FROM ' . $mysql_table_prefix . 'page, ' . $mysql_table_prefix . 'cat
WHERE ' . $mysql_table_prefix . 'page.categorie > 1
AND ' . $mysql_table_prefix . 'page.categorie = ' . $mysql_table_prefix . 'cat.id
ORDER BY updated
DESC LIMIT ' . $posts;
?>
Gesponsorde koppelingen:
Les 1:
Leer af om te werken met prefixes
Les 2:
Schijf je queries netjes uit, plak niet zomaar alles achter elkaar
voor de rest kan je uitstekend met EXPLAIN bekijken het waarom
En de voorkeur bij mysql gaat uit naar het JOINEN in de FROM en niet in de WHERE CLAUSE
http://dev.mysql.com/doc/refman/5.0/en/optimization.html
http://dev.mysql.com/doc/refman/5.1/en/select-optimization.html
Misschien ook wel handig om aan tegeven op welke kolommen van die tabellen voorzien zijn van een index
Leer af om te werken met prefixes
Les 2:
Schijf je queries netjes uit, plak niet zomaar alles achter elkaar
voor de rest kan je uitstekend met EXPLAIN bekijken het waarom
En de voorkeur bij mysql gaat uit naar het JOINEN in de FROM en niet in de WHERE CLAUSE
http://dev.mysql.com/doc/refman/5.0/en/optimization.html
http://dev.mysql.com/doc/refman/5.1/en/select-optimization.html
Misschien ook wel handig om aan tegeven op welke kolommen van die tabellen voorzien zijn van een index
Gewijzigd op 15/11/2010 20:41:53 door Noppes Homeland



