Avatar billede max33 Nybegynder
31. august 2010 - 22:27 Der er 5 kommentarer og
1 løsning

group by og avg

Hej

Jeg vil gerne tegne en graf udfra data fra mysql, jeg har mulighed for 500 stk data ud af grafen, men har typsik flere i databasen.

Kan jeg gruppere data og så beregne middelværdi så jeg får 500 stk data ud, selvom der måske er 1000 eller 3000 data?
Avatar billede showsource Seniormester
31. august 2010 - 22:37 #1
Har du prøvet ?

SELECT AVG(feltnavn) as snit FROM tabel GROUP BY idref ORDER BY snit DESC LIMIT 0,500
Avatar billede arne_v Ekspert
01. september 2010 - 00:41 #2
Et hack som sandsynligvis vil give gode data:

SELECT * FROM tabel ORDER BY RAND() LIMIT 500
Avatar billede arne_v Ekspert
01. september 2010 - 00:48 #3
Lidt mere deterministisk:

SELECT * FROM (SELECT @rownum:=@rownum+1 AS row,tabel.* FROM tabel,(SELECT @rownum:=0) x ORDER BY tabel.vaerdifelt) WHERE row % X = Y

hvor X og Y er tal givet ved:

X = totale antal raekker / 500
Y = X / 2
Avatar billede arne_v Ekspert
20. november 2010 - 01:36 #4
max??
Avatar billede max33 Nybegynder
14. september 2011 - 22:17 #5
er desværre ikke kommet videre med denne løsning lig et svar og du får point
Avatar billede arne_v Ekspert
14. september 2011 - 22:21 #6
svar
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
Computerworld tilbyder specialiserede kurser i database-management

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