Ich habe eine Tabelle mit ungefähr 7 Millionen Datenzeilen. Das Schema ist so etwas wie:Welche Auswirkungen hat die Einrichtung eines Index für das Varchar-Feld?
ID - int (Primary Key)
Name - Varchar(250) Null
...
ich einen Index auf den Spalt Namen festlegen möge Suche zu beschleunigen. z
Select * from table where name = 'ABC'
Aber was sind die Auswirkungen der Einstellung eines Index auf einem varchar Feld nach oben? Indexgröße? Überwiegt die Geschwindigkeit die Nachteile?
Eine Nebenfrage: Würde eine ähnliche Suche von diesem Index profitieren? Wählen Sie zum Beispiel * aus der Tabelle aus, deren Name wie '% abc%' –
Eine Suche "abc%" wird definitiv profitieren. Bezüglich "% abc%" ist der Effekt minimal. Wenn es in Ihrer Anwendung ein häufiges Szenario ist (und die Tabellen groß oder die Felder groß sind), haben Sie eine "Volltextsuche" als Alternative zur einfachen Indizierung. –