Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie optimiere ich eine Datenbank für Superstring-Abfragen?

Sie könnten eine temporäre Tabelle mit einem Volltextindex erstellen und darin „my superstring“ einfügen. Dann könnten Sie die Volltext-Match-Syntax von MySQL in einer Join-Abfrage mit Ihrer permanenten Tabelle verwenden. Sie werden immer noch einen vollständigen Tabellenscan für Ihre permanente Tabelle durchführen, da Sie jede einzelne Zeile auf eine Übereinstimmung prüfen (was Sie wollen, oder?). Aber zumindest wird 'my superstring' indiziert, so dass es wahrscheinlich besser abschneiden wird als das, was Sie jetzt haben.

Alternativ können Sie auch einfach column auswählen aus table und Durchführen des Spiels in einer Hochsprache. Abhängig davon, wie viele Zeilen in table sind , könnte dieser Ansatz sinnvoller sein. Schwere Aufgaben auf einen Client-Server (Webserver) auszulagern, kann oft ein Gewinn sein, weil es die Last auf dem Datenbankserver reduziert.