PHP Portal » Blog » indiziere Spalten zum Suchen

Werbung

indiziere Spalten zum Suchen

geschrieben von

Spalten, welche in Where Bedingungen genutzt werden sollten mit einem Indix versehen werden. Hat eine Spalte ein Index kann MySQL beim suchen auf das Scannen der Spalte verzichten und benutzt stattdessen den weit schnelleren Index.
Dies gilt nicht nur für Vergleiche mit dem gesamten Feldinhalt, sonder auch für Teile. Zu beachten dabei ist, das der Index nur genutzt wird, wenn der gesuchte Ausdruck sich am Anfang des Feldes befindet, also am Anfang des Index steht.

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
mysql> SELECT COUNT(*) FROM bar WHERE foo LIKE 'c%'; +----------+ | count(*) | +----------+ | 456 | +----------+ 1 row in set (0,34 sec) // Spalte "foo" mit Index versehen mysql> ALTER TABLE `bar` ADD INDEX ( `foo` ); mysql> SELECT COUNT(*) FROM bar WHERE foo LIKE 'c%'; +----------+ | count(*) | +----------+ | 456 | +----------+ 1 row in set (0,02 sec)

Kommentare

aktuell liegen noch keine Kommentare vor

Trackbacks

aktuell sind keine Trackbacks vorhanden