29. januar 2009 - 17:56
Der er
13 kommentarer og 1 løsning
Sortering efter antallet af ens elementer
Hej Hvis jeg har en liste af tupler (key, ref), kan det så lade sig gøre at sortere den efter antallet af ens ref. Eksempelvis key ref 1 a 2 g 3 a 4 c 5 g 6 g Vil jeg gerne have sorteret således: key ref 2 g 5 g 6 g 1 a 3 a 4 c Da der er flest ref til a osv. Kan dette lade sig gøre på en smart måde eller?
Annonceindlæg fra Trustworks
Tillid i en Zero-Trust verden
Med voksende trusler, nye EU-krav og øget kompleksitet er cybersikkerhed nu en central ledelsesopgave på linje med strategi og økonomi.
29. januar 2009 - 17:57
#1
Ups, mente da der er flest ref til g, næst flest til a og midst til c
29. januar 2009 - 18:06
#2
prøv noget ala select key, ref, count(ref) c from table group by c order by c desc
29. januar 2009 - 18:07
#3
sikke noget vås jeg skriver. Prøv dette: select key, ref, count(ref) c from table group by ref order by c desc
29. januar 2009 - 22:26
#4
Jeg sidder og arbejder i python, så prøver på at indarbejde det lidt trinvis. Hvis jeg bruger følgende: SELECT key, ref_id FROM table virker det fint. Men hvis jeg prøver på at udvide til SELECT key, ref_id, count(ref_id) c FROM table virker det pludselig ikke mere. Jeg har prøvet med COUNT også, men uden held. Bør dette ikke give mig et resultat?
29. januar 2009 - 22:32
#5
Hvis du har en COUNT skal du vel ogsaa have en GROUP BY ?
29. januar 2009 - 22:44
#6
Ja det ser sådan ud, nu virker det i hvert fald. Lige en sidste ting: SELECT key, ref_id, COUNT(ref_id) c FROM table WHERE word=test GROUP BY ref_id ORDER BY c desc Dette er den bedste rækkefølge at gøre det ikke?
30. januar 2009 - 01:57
#7
SLECT FROM WHERE GROUP BY ORDER BY skal være i den rækkefølge
30. januar 2009 - 01:58
#8
Det er også værd at bemærke at den SQL kun virker i MySQL. I andre SQL dialekter vil man få fejl, fordi der er et felt i select listen som ikke er en aggregeret funktion og ikke er i group by listen.
31. januar 2009 - 14:23
#9
Okay, mange tak for jeres hjælp, kan jeg få jer til at smide et svar så jeg kan give point?
06. februar 2009 - 01:05
#10
Ingen, der har lyst til points eller?
06. februar 2009 - 01:20
#11
ja ja
06. februar 2009 - 08:52
#12
arne_v har lavvande i point-kassen, så bare lad ham få dem :-)
06. februar 2009 - 16:45
#13
29. januar 2009 kl. 18:07:40 var jo ellers korrekt svar - jeg hjalp bare spoerger lidt med implementationen.
18. marts 2009 - 17:59
#14
Undskyld, kan se jeg har et par glemte spørgsmål. Men bedre sent end aldrig
Computerworld tilbyder specialiserede kurser i database-management