Mailinglisten-Archive |
Zitiere News <news at miefert.de>:
> $sql = " SELECT id,url FROM ".DOMAINDATA." WHERE status='1' AND
> status_who='1' ORDER BY last_change DESC LIMIT 0,20 ";
>
> Die Tabelle hat ca. 500.000 Einträge
>
> Die Abfrage verlangsamt das Aufrufen der Webseite aber ziemlich. Ich
> habe auf "url" einen Index gelegt aber es wird dadurch auch nicht
> scheller.
>
> Was kann man noch tun ?
SELECT id, url
FROM ".DOMAINDATA."
WHERE status='1'
AND status_who='1'
ORDER BY last_change DESC
LIMIT 0,20
1. Den Index auf url löschen. Der hat hier nämlich keinen Einfluß, da url in
WHERE nicht verwendet wird.
2. Einen Index auf (status, status_who, last_change) anlegen.
3. Mit EXPLAIN <meine-sql-abfrage> erfragen, ob und wo indexe verwendet werden.
Freundliche Grüße & schönes WE,
Christoph Weißenborn
--
Fingerprint=65B7 73B6 5969 AC2B 4572 39A2 0DBC DAC1 3D6A 45B7
email auch: chw- at gmx.de / mai01dzr at ...
--
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive