Mailinglisten-Archive |
On Thu, 26 Oct 2000 sigi-mysql_(at)_mail2me.de wrote: >On Thu, 26 Oct 2000, Gloss Mathias wrote: > >>Hi, >> >>> ---------- >>> Von: sigi-mysql_(at)_mail2me.de[SMTP:sigi-mysql_(at)_mail2me.de] >>> >>> NAME_1 ... "" >>> NAME_2 ... "" >>> NAME_3 ... "Fritz Guckeinmal" >>> >>> Mit dem entsprechenden Aufruf erhalte ich eine falsche Sortierung. >>> >>> select * from DATA order by NAME_1,NAME_2,NAME_3; >>> >>> Es werden nun die diejenigen Datensätze zuerst ausgegeben, die in den >>> anfänglichen Namensfeldern nichts drin haben, erst danach folgen, wiederum >>> alphabetisch sortiert, die restlichen Datensätze, die in den anfänglichen >>> Namesfeldern was drin haben. >>> >>> Wie kann ich das sortieren, daß die alle, egal ob was drin ist oder nicht >>> richtig sortiert werden? Quasi wie wenn man vorher alle Namensfelder >>> zusammenkleben würde und dann erst sortiert. >>> > >Hallole > >>*g* genau so wie du geschrieben hast. Probier mal (ungetestet) > >Ich neige ja schon mein Haupt. ;-) > >>select a,b,c,NAME_1,NAME_2, NAME_3, CONCAT(NAME_1,NAME_2,NAME_3) as >>sortierstring >>oder by sortierstring; >> >>ich weiß nicht ob es einfacher so geht: >> >>select *,CONCAT(NAME_1,NAME_2,NAME_3) as sortierstring >>oder by sortierstring; > >Also dies hier funktioniert einwandfrei. >Jetzt muß ich nur noch das mit den dubbeligen deutschen Sonderzeichen >hinbekommen. Danke. Hier kommt noch ein Update, denn sonst werden die kleingeschriebenen hinter die großgeschriebenen einsortiert. select *,lcase(concat(NAME_1,NAME_2,NAME_3)) as SORTIERUNG order by SORTIERUNG; Man kann natürlich auch UCASE etc. nehmen. ;-) Allerdings hängen meine deutschen Sonderzeichen immer noch hinten dran. Hat da niemand eine hilfreiche Idee? Sigi >>Hoffe es hilft (schreib ruhig obs geht oder nicht ;) >> >>Mathias >> >> >> > > >--- >*** 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