Mailinglisten-Archive |
guten morgen, > Wie frage ich in statt dessen ab ? > >> b) gewichtiger ist jedoch, daß der index nicht benutzt werden kann, LIKE "wert%" benutzt den index LIKE "%wert" oder LIKE "%wert%" benutzt nicht den index nun, wie man ansonsten abfragt, ist eine frage, die vor der erstellung einer datenbank beantwortet sein sollte, sprich: um welchen inhalt geht es und wie wird dieser in welcher frequenz abgefragt bzw. eingegeben. stichwort: normalisierung. entsprechend kann ich dir das nicht beantworten, weil ich nicht weiß, um welchen content etc. es geht. wenn ich aber sehe, daß nach Markus Schmidt im like-string mit vorne und hinten % abgefragt wird, dann stimmt da m.e. etwas nicht, weil ein name sich eigentlich leicht auflösen ließe in die felder "nachname" und "vorname". wenn man so gut wie nie nach den vornamen sucht, liesse sich auch nur ein feld "name" erstellen, jedoch dann mit der folge "name, vorname", was in der eingabe durchgehalten werden muß. dann wäre problemlos eine suche nach "schmidt, mar%" möglich und der index wird benutzt werden. ansonsten die funktionsweise vom index http://dev.mysql.com/doc/mysql/de/MySQL_indexes.html > c) index prüfen mit EXPLAIN Wie geht das ? Was bewirkt es ? einfach ausprobieren, indem du es vor dem SELECT ... schreibst. ansonsten siehe http://dev.mysql.com/doc/mysql/de/EXPLAIN.html handbuch lesen empfiehlt sich eh > also am like liegt es definitiv nicht . ich habe die Abfrage jetzt so > umgeschrieben das der like Block nur berücksichtigt wird wnen auch ein > Suchwort eingegeben wurde. Die Abfrage ist aber genauso langsam. Wenn > ich jetzt ein Suchwort eingebe ist sie supershcnell! da würde ich nun doch gerne mal einiges sehen wollen, um das zu verstehen, weil das eigentlich unlogisch ist. poste doch bitte daher mal den aufbau der tabellen, die vorhandenen indexe und die beiden select abfragen plus jeweils mit EXPLAIN DESCRIBE tbl für tabellen-struktur SHOW INDEX FROM tbl für vorhandene indexe SELECT ... ohne suchwort EXPLAIN SELECT ... ohne suchwort SELECT ... mit suchwort EXPLAIN SELECT ... mit suchwort -- "Sie haben neue Mails!" - Die GMX Toolbar informiert Sie beim Surfen! Jetzt aktivieren unter http://www.gmx.net/info -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive