phpbar.de logo

Mailinglisten-Archive

[php] Suche in MySql

[php] Suche in MySql

Achim Fink achim at aff-web.de
Mon Jul 16 13:36:35 CEST 2007



> -----Ursprüngliche Nachricht----- 
> Achim Fink schrieb:
> > Ich habe in einer Datenbank eine Spalte in der Artikelnummer in
> folgender
> > Form auftreten:
> >
> > ACK 128 MSV
> > AST M1613 MS
> > CK 386 KON MSV
> >
> > Also Unterschiedliche Zeichenlänge mit Leerzeichen an unterschiedlichen
> > Positionen. Im Moment mache ich eine Abfrage in dieser Form:
> >
> > SELECT * FROM artikel WHERE art_nr LIKE „%<suchtext>%“
> >
> > Dabei muss man allerdings wissen wo sich die Leerzeichen befinden. Wenn
> > jemand z.B. nach ACK 128 MSV sucht und ACK128MSV eingibt bekommt er
> keine
> > Daten.

[Achim Fink] 
Also erst mal vielen Dank an alle. Da waren ja schon ein paar gute
Lösungsvorschläge dabei. Ich werde die mal ausprobieren und noch mal
berichten.
Ja..das mit den Leerzeichen ist nun halt mal vorgegeben. Meisten sind die
Datenstrukturen ja gewachsen und vielleicht oder sogar wahrscheinlich noch
aus der Zeit als es keine Suchanfrage gab. So muss man sich halt oft mit den
Kundenvorgaben rumschlagen. Was ich in der Zwischenzeit noch gefunden hatte
war mit SELECT mit REGEXP . Aber ich denke das wird zu kompliziert. Da die
Abfrage mit 50 000 Artikel im Moment recht schnell geht wird ich das mit den
Leerzeichen entfernen mal Probieren oder auch mit einer neuen Spalte in der
die Leezeichen entfernt sind.

Gruß Achim 


php::bar PHP Wiki   -   Listenarchive