/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Specielle tegn efter tal og bogstaver i en~
Fra : EnjoyNews


Dato : 11-11-06 14:37

Hej

Er det muligt at udskrive en liste hvor tegn kommer til sidst.
Altså først 0-9 så a-z og derefter specielle tegn som ",_!? osv.

Normalt kommer disse tegn jo først, men det må de ike i den liste jeg skal
bruge.


Michael



 
 
TageG (11-11-2006)
Kommentar
Fra : TageG


Dato : 11-11-06 16:10


"EnjoyNews" <mh-nyheder@mail.dk> skrev i en meddelelse
news:4555d239$0$924$edfadb0f@dread12.news.tele.dk...
> Hej
>
> Er det muligt at udskrive en liste hvor tegn kommer til sidst.
> Altså først 0-9 så a-z og derefter specielle tegn som ",_!? osv.
>
> Normalt kommer disse tegn jo først, men det må de ike i den liste jeg skal
> bruge.
>

det kommer jo nok an på hvilket db system du bruger, men et hint (f.eks.
DB2) kunne være:

select col from table order by TRANSLATE(col,'_!?',x'aaabac')

du kan jo selv udvide efter behov



EnjoyNews (12-11-2006)
Kommentar
Fra : EnjoyNews


Dato : 12-11-06 00:46


"TageG" <tage@gejl.dk> skrev i en meddelelse
news:4555e7e3$0$186$edfadb0f@dread11.news.tele.dk...
>
> "EnjoyNews" <mh-nyheder@mail.dk> skrev i en meddelelse
> news:4555d239$0$924$edfadb0f@dread12.news.tele.dk...
> > Hej
> >
> > Er det muligt at udskrive en liste hvor tegn kommer til sidst.
> > Altså først 0-9 så a-z og derefter specielle tegn som ",_!? osv.
> >
> > Normalt kommer disse tegn jo først, men det må de ike i den liste jeg
skal
> > bruge.
> >
>
> det kommer jo nok an på hvilket db system du bruger, men et hint (f.eks.
> DB2) kunne være:
>
> select col from table order by TRANSLATE(col,'_!?',x'aaabac')
>
> du kan jo selv udvide efter behov

Jeg er ikke klar ocer hvilket system jeg bruger.. Det er bare en mysql
database...
Umiddelbart vil den ikke godtage TRANSLATE kommando'en.

Jeg har på en anden side lavet dette
ORDER BY case when Subkategori = 'Andet' then 1 else 0 end, Subkategori
Det putter Andet sidst i sorteringen.

og denne
ORDER BY FIELD(Gruppe,'Musician','Singer','Composer','Studio Crew','Cover
Crew')
Der vælger jeg helt selv række følgen.

Men det kræver jo at man kan definere symboler.
Altså ex. ORDER BY case when Feltnavnet 'starter med et symbol' then 1 else
0 end, Feltnavnet.
Eller ORDER BY FIELD (Feltnavnet,'0-9','a-z','symboler')

Så kan man lave det som en af de eksempler hvor man måske har en eller anden
defination af symboler, tal og bogstaver generalt.



EnjoyNews (12-11-2006)
Kommentar
Fra : EnjoyNews


Dato : 12-11-06 01:40


"EnjoyNews" <mh-nyheder@mail.dk> skrev i en meddelelse
news:45566108$0$907$edfadb0f@dread12.news.tele.dk...
>
> "TageG" <tage@gejl.dk> skrev i en meddelelse
> news:4555e7e3$0$186$edfadb0f@dread11.news.tele.dk...
> >
> > "EnjoyNews" <mh-nyheder@mail.dk> skrev i en meddelelse
> > news:4555d239$0$924$edfadb0f@dread12.news.tele.dk...
> > > Hej
> > >
> > > Er det muligt at udskrive en liste hvor tegn kommer til sidst.
> > > Altså først 0-9 så a-z og derefter specielle tegn som ",_!? osv.
> > >
> > > Normalt kommer disse tegn jo først, men det må de ike i den liste jeg
> skal
> > > bruge.
> > >
> >
> > det kommer jo nok an på hvilket db system du bruger, men et hint (f.eks.
> > DB2) kunne være:
> >
> > select col from table order by TRANSLATE(col,'_!?',x'aaabac')
> >
> > du kan jo selv udvide efter behov
>
> Jeg er ikke klar ocer hvilket system jeg bruger.. Det er bare en mysql
> database...
> Umiddelbart vil den ikke godtage TRANSLATE kommando'en.
>
> Jeg har på en anden side lavet dette
> ORDER BY case when Subkategori = 'Andet' then 1 else 0 end, Subkategori
> Det putter Andet sidst i sorteringen.
>
> og denne
> ORDER BY FIELD(Gruppe,'Musician','Singer','Composer','Studio Crew','Cover
> Crew')
> Der vælger jeg helt selv række følgen.
>
> Men det kræver jo at man kan definere symboler.
> Altså ex. ORDER BY case when Feltnavnet 'starter med et symbol' then 1
else
> 0 end, Feltnavnet.
> Eller ORDER BY FIELD (Feltnavnet,'0-9','a-z','symboler')
>
> Så kan man lave det som en af de eksempler hvor man måske har en eller
anden
> defination af symboler, tal og bogstaver generalt.



aahhh.. Et lys gik op for mig
Det virker hvis man gør sådan:
ORDER BY case when substring(KundeNavn, 1, 1 ) between '0' and '9' or
substring(KundeNavn, 1, 1 ) between 'a' and 'Å' then 0 else 1 end, KundeNavn

Nu putter den 0-9 og a-Å først og alt det før 0 og det mellem 9 og a som ex.
'<' putter den bagerst...

Nu kan folk ikke snude dig til en top placering ved at sætte alle mulige
tegn foran deres navn snydt igenm, for så kommer de aller bagerst



Søg
Reklame
Statistik
Spørgsmål : 177580
Tips : 31968
Nyheder : 719565
Indlæg : 6409076
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste