Sebastian: Mysql - Spalten über where spalte like "" oder spalte=""

Beitrag lesen

Das ist auch kein Wunder, weil die Aussage, LIKE sei langsam, so nicht stimmt. Nur LIKE "%xyz" _muss_ langsam sein, weil kein Index greifen kann, wenn nach etwas in der Mitte eines Feldinhaltes gesucht wird. Dann kann SUBSTR aber auch nicht schneller sein.

Stimmt.

egal ob so:
        select * from tabelle where spalte2="3312000000";
oder
        select * from tabelle where spalte like "3312%";

Da siehst Du allerdings etwas falsch. Die beiden Statements machen nämlich etwas völlig Unterschiedliches.

where spalte2="3312000000"
Bringt nur solche Datensätze, bei denen spalte2 genau den Inhalt "3312000000" hat.

spalte like "3312%"
Bringt alle Datensätze, bei denen der Inhalt von spalte2 mit "3312" beginnt, also _auch_ Datensätze mit "3312000000", aber _auch_ solche mit "3312450000" oder "3312459800" oder ...

ja das ist mir schon klar, ich meinte es ist egal ob man
where spalte2="3312000000"

oder

where spalte like "3312%"

verwendet. das war aber nicht auf die suchergebnisse bezogen sondern auf die zeit die jede suchanfrage benötigt.