Aus Genussgründen versuchen wir mal zu rekapitulieren, was an der Diskussion schief lief:
1.) die Frage:
ich habe ein Problem mit einer Datenbank-Abfrage. Da ich keine Idee habe wie ich dazu googlen soll, kommt hier meine Frage:
Ich möchte alle Datensätze haben, wo der Text in Feld "X" den Anfangsbuchstaben "A" hat. Ist sowas mit einer Abfrage möglich?
Falls ja, wie würde diese Abfrage dann aussehen?
[http://forum.de.selfhtml.org/?t=144856&m=939724]
Kommentar: beliebiges DF, von Index keine Spur
2.) Meine Antwort:
Die schicken Stringfunktionen bieten sich auch an (MySQL vorausgesetzt): http://dev.mysql.com/doc/refman/5.1/de/string-functions.html [...]
https://forum.selfhtml.org/?t=144856&m=939784
Kommentar: Hinweis auf Stringfunktionen, nachdem Dritte richtigerweise bereits den LIKE-Operator in die Diskussion eingebracht haben
3.) Deine Nachricht:
in seinem falle ist der like operator die bessere wahl, es sei den mysql kennt schon funktionale indexe. aber selbst dann müsste extra dafür einer angelegt werden. also besser bei like bleiben.
https://forum.selfhtml.org/?t=144856&m=939854
Kommentar: Deine Thesen lautet: mit Index ist LIKE schneller, da LIKE im Gegensatz zu LEFT() den Index referenziert.
Dem wollten wir eigentlich nie widersprechen, in der Folge...
4.) Meine Nachricht:
in seinem falle ist der like operator die bessere wahl, es sei den mysql kennt schon funktionale indexe. aber selbst dann müsste extra dafür einer angelegt werden. also besser bei like bleiben.
Erklär mal, LEFT(s, n) macht doch weniger als LIKE.
https://forum.selfhtml.org/?t=144856&m=939864
Kommentar: Und die Missverständnisse nehmen ihren Lauf.
Also, zusammenfassend, wenn Index da, der sinnvoll referenziert werden kann, dann den Operator LIKE nutzen, ansonsten besser auf die Stringfuntionen zurückgreifen wegen geringerem Überbau.