|
| Sortering af streng - array - eller mysql-~ Fra : Brian Emilius |
Dato : 23-10-04 18:22 |
|
Hej NG
Jeg har en mysql database med et varchar-felt. Hvordan sorterer jeg dette
ASC?
Hvis jeg nøjes med at benytte ORDER BY feltnavn ASC, bliver outputtet noget
lign:
1
10
11
2
3
4 osv.
- Og det er jo ikke godt nok.
Venlig hilsen
Brian Emilius
| |
Peter Brodersen (23-10-2004)
| Kommentar Fra : Peter Brodersen |
Dato : 23-10-04 18:42 |
|
On Sat, 23 Oct 2004 19:21:47 +0200, "Brian Emilius" <msn@emilius.dk>
wrote:
>Jeg har en mysql database med et varchar-felt. Hvordan sorterer jeg dette
>ASC?
Først et hurtigt spørgsmål om hvorfor du har data, der skal opfattes
som tal, i et varchar-felt.
Men hvis det udelukkende er tal, der er i feltet, så kan du evt. lave
et hurtigt trick i stil med:
... ORDER BY feltnavn+0 ASC
Så bliver der sorteret på værdier, betragtet som tal. Alternativt kan
du explicit bruge CAST.
--
- Peter Brodersen
Ugens sprogtip: pc (og ikke PC)
| |
Brian Emilius (24-10-2004)
| Kommentar Fra : Brian Emilius |
Dato : 24-10-04 16:26 |
|
"Peter Brodersen" <usenet@ter.dk> skrev i en meddelelse
news:cle55p$mtn$1@katie.ellegaard.dk...
> Først et hurtigt spørgsmål om hvorfor du har data, der skal opfattes
> som tal, i et varchar-felt.
Felterne ser nogelunde sådan her ud:
1
1_1
2
2_1 osv. De skal både kunne sorteres som de er og bruges som arrays med
explode()/implode(), så derfor er jeg nødt til at bruge et varchar-felt.
> Men hvis det udelukkende er tal, der er i feltet, så kan du evt. lave
> et hurtigt trick i stil med:
>
> .. ORDER BY feltnavn+0 ASC
Det kan jeg jo så ikke...
> Så bliver der sorteret på værdier, betragtet som tal. Alternativt kan
> du explicit bruge CAST.
Hvad er det??? Har aldrig hørt om det, hvor finder jeg noget om det?
Venlig hilsen
Brian Emilius
| |
|
|