04. juli 2006 - 14:59Der er
5 kommentarer og 1 løsning
Sortering eller grupering af text felter.
Jeg har pt flg select statement
SELECT gruppe.GRUPPENAVN, mail.MAILADR FROM gruppe INNER JOIN gruppeMail ON gruppe.ID_GRUPPE = gruppeMail.ID_GRUPPE INNER JOIN mail ON gruppeMail.ID_MAIL = mail.ID_MAIL
Det er ialt tre tabeller hvor de 2 felter gruppenavn og mailadr er af typen text. Jeg ønsker at feltet gruppenavn skal være sorteret i alfabetisk rækkefølge.
På Computerworld Cloud & AI Festival kan du møde en af landets skarpeste CISO’er; Thomas Zuliani fra Arla Foods. Få en forsmag på hans keynote her.
1. juli 2024
Slettet bruger
04. juli 2006 - 15:01#1
SELECT gruppe.GRUPPENAVN, mail.MAILADR FROM gruppe INNER JOIN gruppeMail ON gruppe.ID_GRUPPE = gruppeMail.ID_GRUPPE INNER JOIN mail ON gruppeMail.ID_MAIL = mail.ID_MAIL ORDER BY gruppe.GRUPPENAVN
Synes godt om
Slettet bruger
04. juli 2006 - 15:03#2
Du kan så også skrive
SELECT gruppe.GRUPPENAVN, mail.MAILADR FROM gruppe INNER JOIN gruppeMail ON gruppe.ID_GRUPPE = gruppeMail.ID_GRUPPE INNER JOIN mail ON gruppeMail.ID_MAIL = mail.ID_MAIL ORDER BY gruppe.GRUPPENAVN ASC
Hvor ASC betyder ascending - altså stigende orden, men da det er standardvalget, er det frivilligt. Hvis du vil have i omvendt orden hedder det DESC
Og her kan du så også se, hvorfor det er smart at lade være med at bruge ordet "by" som feltnavn. Det er nemlig reserveret af SQL.
Når jeg forsøger dette skriver den: "text data types cannot be used in ORDER BY clause"
Synes godt om
Slettet bruger
04. juli 2006 - 15:13#4
Er det egentlig ikke noget overkill at bruge typen text til de felter? Den er beregnet til tekster på over 8KB. Til små ord og den slags er char eller varchar meget bedre (og de kan nok sorteres efter).
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.