Mailinglisten-Archive |
Hallo René Es sind 2 LZ drin, darum ging es nicht. Danke für den Tip. René -----Ursprüngliche Nachricht----- Von: "Rene Fertig" <rene_(at)_renux.de> An: <mysql-de_(at)_lists.4t2.com> Gesendet: Samstag, 13. Januar 2001 14:29 Betreff: Re: Problem SELECT > Hi ich ;-) > > Am Sam, 13 Jan 2001 schrieb Rene Kurt: > > Einträgen, ein Feld darin heisst "Name" darin sin Künstlernamen mit > > Geburtsdatum gespeichert. Wie die Daten gespeichert sind, habe ich bereits > > geändert bzw. damit gespielt. Eigentlich sollte der Eintrag z.B. "Acosta > > Leon *1930" sein, habe auch schon den "*" weggelassen. > Ich würde daraus erst einmal zwei Spalten machen: "Name" und "Geburt". Ggf. > noch eine dritte Spalte "Tod" o.ä.. Dann kannst du problemlos auf das * > verzichten (in der Ausgabe kann man es ja, falls gewünscht mit concat > wieder davor setzen). Außerdem hast du so viel bessere > Abfragemöglichkeiten, z.B. alle 1925 geborenen Künstler. Oder alle die > zwischen 1925 und 1940 geboren wurden (das geht, wenn überhaupt, mit > deiner Tabelle nur sehr umständlich). > > Doch nun zu deinem Problem: > > SELECT * FROM artist WHERE Name LIKE "Acosta Leon %" > > > > schreibe ich aber z.B. "Acosta Leon *%" dann geht schon nicht mehr. Beachte, > Kann es sein, das du vielleicht ein Leerzeichen zuviel in den Texten hast? > Wenn dort "Acosta Leon *1930" steht (ZWEI Leerzeichen vor dem *) dann > findet ein LIKE "Acosta Leon %" das aber ein LIKE "Acosta Leon *%" nicht! > Probier mal LIKE "Acosta Leon %1930". Wenn das geht, könnte es daran > liegen. > > Wenn du die Aufteilung der Spalten machst wie oben vorgeschlagen, > verhindert das zwar nicht solche Leerzeichen-Probleme vollständig, kann > aber helfen sie zu verringern. So wären überzählige LZ zwar in Name > weiterhin möglich (aber leichter erkenn- und entfernbar -> TRIM), aber in > Geburt und Tod nicht (natürlich nur, wenn du diese als Zahlen-Spalten > anlegst (smallint sollte für Jahreszahlen reichen)). > > Im Übrigen: Bei uns in der Firma sind zuviele Leerzeichen so häufig ein > Problem, das ich in den Frontends entweder nur noch Auswahllisten anbiete > oder, wenn sich die freie Eingabe, wie bei Namen, nicht vermeinden lässt, > filtere ich die überzähligen LZ aus. > > Ciao, Rene > -- > > --- > *** Weitere Infos zur Mailingliste und MySQL unter http://www.4t2.com/mysql > > --- *** Weitere Infos zur Mailingliste und MySQL unter http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive