Mailinglisten-Archive |
Hallo,
ich habe in der Zwischenzeit möglicherweise die Lösung gefunden, Andreas
du hast natürlich recht, der Index ist gar nicht benutzt worden,
so sollte das besser funktionieren, laut explain wird nun auch kein full
table scan mehr gemacht.
select product.id as id, product.title as title, product.manufacturer_id
as mid, manufacturer.title as manuf_title from product, manufacturer
where
match (product.title) against('blau grün' )
and product.manufacturer_id = manufacturer.id
union
select product.id, product.title, product.manufacturer_id as mid,
manufacturer.title as manuf_title from product, manufacturer
where
match (manufacturer.title) against('blau grün' )
and product.manufacturer_id = manufacturer.id
limit 1,20
execution time im schnit 0,171 sec, damit kann ich erstmal leben, oder
gehts noch schneller? :-)
Gruß
Andi
Andreas Müller schrieb:
> Hallo Andi,
>
> nun mach doch mal ein EXPLAIN und du wirst sehen was da passiert.
>
> Letztendlich ist dein Problem das MySQL einen Volltextindex nur über jeweils
> eine Tabelle aufbauen kann und nicht über mehrere. Deine Query verwendet den
> Volltextindex garnicht sondern arbeitet das ganze "per Hand" ab. Du solltest
> hier eine ODER Verknüpfung der Abfragen gegen den jeweiligen Volltextindex
> durchführen.
>
> Gruß,
> Andreas
>
>
php::bar PHP Wiki - Listenarchive