|
| MySQL og tid (group by) Fra : Ove Lie |
Dato : 16-03-05 16:25 |
|
"select date_format(tid,'%H'),avg(ut),avg(inn) from linjebruk group by
date_format(tid,'%H') order by date_format(tid,'%H')"
gir meg:
+-----------------------+---------------+---------------+
| date_format(tid,'%H') | avg(ut) | avg(inn) |
+-----------------------+---------------+---------------+
| 00 | 3995894.7347 | 6808582.8707 |
| 01 | 138164.7955 | 2686941.5000 |
| 02 | 442608.5000 | 24316.7857 |
| 03 | 3811.8333 | 14888.0000 |
| 04 | 5003.5000 | 16260.3333 |
| 05 | 3811.8333 | 14888.0000 |
| 06 | 3811.8333 | 14888.0000 |
| 07 | 958108.2692 | 109051.7692 |
| 08 | 32787676.9155 | 1719203.0000 |
| 09 | 29929054.8585 | 1499875.1981 |
| 10 | 21856405.1370 | 1033422.5000 |
| 11 | 20467048.3473 | 908516.2939 |
| 12 | 32145599.1541 | 1228914.5827 |
| 13 | 26700503.5442 | 12248726.4524 |
| 14 | 29098915.5065 | 11200668.1046 |
| 15 | 19458477.8785 | 9277930.3066 |
| 16 | 14756598.9465 | 7106382.8565 |
| 17 | 15127975.7327 | 6649703.7089 |
| 18 | 11373033.4188 | 7211163.3333 |
| 19 | 10272164.2696 | 8525687.2935 |
| 20 | 15404787.0747 | 6635917.0550 |
| 21 | 6894139.0532 | 3639454.5902 |
| 22 | 5468821.1094 | 1836020.0732 |
| 23 | 3219202.2588 | 1767522.8681 |
+-----------------------+---------------+---------------+
Er det noen som kan greie å få denne til å sortere med kvartesrs og/eller
halvtimes intervaller?
Det er ikke noe problem for denne spørringen at alt som skjer mellom klokken
12 og 13 føres på klokken 12, og det vil sågar ikke bli noe problem med
kvarter eller halvtimer hellr.
-Ove
| |
Kristian Damm Jensen (17-03-2005)
| Kommentar Fra : Kristian Damm Jensen |
Dato : 17-03-05 08:37 |
|
Ove Lie wrote:
> "select date_format(tid,'%H'),avg(ut),avg(inn) from linjebruk group
by
> date_format(tid,'%H') order by date_format(tid,'%H')"
>
<snip>
> Er det noen som kan greie å få denne til å sortere med kvartesrs
og/eller
> halvtimes intervaller?
>
> Det er ikke noe problem for denne spørringen at alt som skjer mellom
klokken
> 12 og 13 føres på klokken 12, og det vil sågar ikke bli noe
problem med
> kvarter eller halvtimer hellr.
Uden garanti for at det virker - jeg har ikke mulighed for at teste på
en MySQL installation - så mener jeg dette må være måden at gøre
det på.
select date_format(tid,'%H')
+ case
when date_format(tid, '%i') between 0 and 14
then ':00'
when date_format(tid, '%i') between 15 and 29
then ':15'
when date_format(tid, '%i') between 30 and 44
then ':30'
when date_format(tid, '%i') between 45 and 59
then ':45'
end
as tidspunkt
, avg(ut)
, avg(inn)
from linjebruk
group by tidspunkt
order by tidspunkt
VH
Kristian
| |
Kristian Damm Jensen (17-03-2005)
| Kommentar Fra : Kristian Damm Jensen |
Dato : 17-03-05 08:37 |
|
Ove Lie wrote:
> "select date_format(tid,'%H'),avg(ut),avg(inn) from linjebruk group
by
> date_format(tid,'%H') order by date_format(tid,'%H')"
>
<snip>
> Er det noen som kan greie å få denne til å sortere med kvartesrs
og/eller
> halvtimes intervaller?
>
> Det er ikke noe problem for denne spørringen at alt som skjer mellom
klokken
> 12 og 13 føres på klokken 12, og det vil sågar ikke bli noe
problem med
> kvarter eller halvtimer hellr.
Uden garanti for at det virker - jeg har ikke mulighed for at teste på
en MySQL installation - så mener jeg dette må være måden at gøre
det på.
select date_format(tid,'%H')
+ case
when date_format(tid, '%i') between 0 and 14
then ':00'
when date_format(tid, '%i') between 15 and 29
then ':15'
when date_format(tid, '%i') between 30 and 44
then ':30'
when date_format(tid, '%i') between 45 and 59
then ':45'
end
as tidspunkt
, avg(ut)
, avg(inn)
from linjebruk
group by tidspunkt
order by tidspunkt
VH
Kristian
| |
|
|