11. august 2008 - 14:53Der er
7 kommentarer og 1 løsning
Group by
Jeg har følgende SQL: SELECT substr(to_char(slut_indtidsp,'YYMMDD HH24'),1,6) Dato, sum(tt_antal) FROM tt_fil WHERE slut_indtidsp >= sysdate-5 AND slut_indtidsp IS NOT NULL AND (substr(to_char(slut_indtidsp,'YYMMDD HH24'),1,6)) = '080811' GROUP BY to_char(slut_indtidsp,'YYMMDD HH24') ORDER BY 1 ASC
Det giver mig et resultat som følg.: Dato SUM(TT_ANTAL) 080811 1542383 080811 60026 080811 70953 080811 65481 080811 42319 080811 2056205 080811 380544 080811 1467804 080811 3025184 080811 4593895 080811 5735992 080811 5385897 080811 5017371 080811 6470294 080811 1768690
Hvordan laver jeg det om til at alle der ligger på den dato der hedder 080811 f.eks, bliver sum'et sammen og så har jeg én linie med 080811 og summen ved siden af?
Eller, som arne_v skriver, bare bruge en formatering der vælger dato på både SELECT og GROUP BY, i stedet for din formatering som vælger dato og tid, hvorefter du dropper tiden igen med en substring instruktion. Det virker ærlig talt ikke helt gennemtænkt. :-)
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.