Avatar billede oasen Nybegynder
20. juni 2002 - 15:10 Der er 7 kommentarer og
1 løsning

Sortér efter arrays størrelse

Kan jeg via en SQL sortere efter størrelsen af et array?
Dvs. at de records med det længste array skal vises først.
Avatar billede jakoba Nybegynder
20. juni 2002 - 15:18 #1
Fortæl lige først hvordan du gemmer et 'array' i SQL. Og hvilken slags SQL det er: Acces, mysql, interbase, ...
Avatar billede oasen Nybegynder
20. juni 2002 - 16:17 #2
Arrayet har formen "235,267,876,675" osv...
Altså adskilt af komma.
Brugeren har mulighed for at fjerne og tilføje fra/til arrayet ved at opdatere posten.
Databasen er en Access 2000.

Der kan jo selvfølgelig sorteres ved at løbe alle records igennem med en løkke og aflæse værdien med UBound.
Men det ville være noget mindre krævende, hvis det kunne klares med en SQL.
Avatar billede jakoba Nybegynder
20. juni 2002 - 16:50 #3
Det du gemmer er ikke et array, det er en streng. bogstaver efter hinanden.
og jeg tror ikke SQL har funktioner til at behandle det som andet end en streng.

SQL har en length funktion  LENGTH( feltnavn ) du evt kan bruge i din ORDER BY, men det vil kin gå godt hvis vi kan stole på at alle de tal der står imellem kommaerne har 3 cifre. hvis de kan være mindre eller større er længden af strengen ikke god nok at sorterer på. eg:
"1,2,3,4,5,6,7,8,9"        9 arrayceller,  LENGTH tæller 17 bogstaver
"1997,2001,2002,1234567"    4 arrayceller,  LENGTH tæller 22 bogstaver

mvh JakobA
Avatar billede oasen Nybegynder
20. juni 2002 - 17:59 #4
Ja, det er naturligvis en streng med form som et array, der gemmes (og hentes).
Det anede mig nok, at en løkke er den eneste løsning desværre...
Elementerne i arrayet antager værdier fra 1-?, så løsningen med length ville ikke være optimal. Men måske det kan give det nødvendige overblik...
Avatar billede oasen Nybegynder
20. juni 2002 - 23:28 #5
Tak alligevel...
Avatar billede oasen Nybegynder
20. juni 2002 - 23:29 #6
Det hedder bare LEN i øvrigt...
Avatar billede jakoba Nybegynder
20. juni 2002 - 23:35 #7
Sorry, jeg er ikke så god til Access.
Avatar billede oasen Nybegynder
23. juni 2002 - 01:31 #8
Man kan jo ikke være god til det hele :)
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester