我有下表:
id 值 truncated_day just_yyyy_mm_dd 1167 300 11 年 7 月 1 日 0:00 11 年 7 月 1 日 1167 301 11 年 7 月 1 日 0:00 2011 年 7 月 1 日 1167 303 11 年 7 月 1 日 0:00 11 年 7 月 1 日 1167 308 11 年 7 月 1 日 0:00 11 年 7 月 1 日 1167 312 11 年 7 月 2 日 0:00 2011 年 7 月 2 日 1167 316 11 年 7 月 2 日 0:00 2011 年 7 月 2 日 1167 318 11 年 7 月 2 日 0:00 2011 年 7 月 2 日 1167 330 11 年 7 月 2 日 0:00 2011 年 7 月 2 日 1700 0 7/1/11 0:00 7/1/11 1700 10 7/1/11 0:00 7/1/11 1700 21 11 年 7 月 1 日 0:00 11 年 7 月 1 日 1700 33 2011 年 7 月 1 日 0:00 11 年 7 月 1 日 1700 34 2011 年 7 月 2 日 0:00 2011 年 7 月 2 日 1700 35 2011 年 7 月 2 日 0:00 11 年 7 月 2 日 1700 40 11 年 7 月 2 日 0:00 2011 年 7 月 2 日
该表实际上很长(超过 3200 万行!!)。
我想拥有每天和每个不同 ID 的最大值和最小值(read_value)。我尝试了以下查询,但它不起作用:
'$'select id,
date_trunc('day', timestamp_utc) as truncated_day,
substring(cast(date_trunc('day', timestamp_utc) as text) from 1 for 10) as just_yyyy_mm_dd,
max(value) as maxvalue,
min(value) as minvalue
from TABLE
order by device_id, truncated_day'$'
我基本上希望查询返回:
id min max truncated_day just_yyyy_mm_dd 1167 300 308 2011 年 7 月 1 日 0:00 11 年 7 月 1 日 1167 312 330 11 年 7 月 2 日 0:00 11 年 7 月 2 日 1700 0 33 7/1/11 0:00 7/1/11 1700 34 40 11 年 7 月 2 日 0:00 11 年 7 月 2 日
你能帮我解决这个问题吗?非常感谢您!ñ