Anzahl Zeichen und deren Begrenzung
Ich stand vor dem Problem, in einer Tabelle einer MySQL-Datenbank nach einem Text suchen zu müssen, der in einem Fließtext enthalten war. Zudem sollte dieser Fließtext mit sehr vielen Zeichen auf einer Webseite ausgegeben werden. Dies aber nicht in voller Länge, da ein langer Fließtext in einer Tabellendarstellung mehr eine Katastrophe ist.
Für beide Probleme konnte ich eine Lösung finden. Die eine Lösung begrenzte bei der Ausgabe des Abfrageergebnisses den Fließtext auf 250 Zeichen (Zeichen 1 bis 250). Die andere Lösung erlaubte mir eine Volltextsuche und das Auffinden der von mir gewünschten Textpassagen.
Dies ist exemplarisch die Syntax eines SQL-Statements, das mir geholfen hatte, die Anzahl der Zeichen zu begrenzen:
"SELECT id, substring(text,1,250) FROM texttabelle ORDER BY id";
Im Feld text der Tabelle texttabelle ist der Text enthalten, der für eine Ausgabe in einer tabellarischen Darstellung ungeeignet ist. Um eine Art von Teaser zu haben, konnte ich die Anzahl der Zeichen auf 250 Zeichen begrenzen und nutzte dafür die Funktion substring.
Als nächstes musste ich in dem Fließtext eine Art von Volltextsuche durchführen. Davon hatte ich gehört, aber noch nie gemacht. Bislang hatte ich mich auf die Abfrage von Tabellenfeldern beschränkt. Doch nun war das Auffinden von Textteilen notwendig.
Und dies ist exemplarisch die Syntax des SQL-Statements, das mir geholfen hatte, den gesuchten Text zu finden:
SELECT * FROM texttabelle WHERE text LIKE "%ich bin der Suchtext%";
Im Grunde genommen ist es nicht schwer, wenn man den Umgang mit den Operator LIKE kennt und weiß, dass mit den beiden Prozentzeichen der Suchtext einzufassen ist.
Mit diesem beiden Lösungen konnte ich die aufgekommenen Probleme lösen und meine Tabelle bereinigen.