我一直试图找到这个查询的解决方案但是我从开始就试图计算每10分钟间隔买卖物品的数量
date_action ACTION
2018-03-16 00:00:00 bought
2018-03-16 00:03:00 sold
2018-03-16 00:04:00 bought
2018-03-16 00:27:00 sold
2018-03-16 00:29:00 sold
我试图得到的输出应该是那样的
time_interval ACTION count
2018-03-16 00:00:00 bought 2
2018-03-16 00:00:00 sold 1
2018-03-16 00:20:00 bought 1
2018-03-16 00:20:00 sold 2
我是新堆栈溢出所以我希望我的用法很明确
答案 0 :(得分:0)
截断10分钟的间隔需要一些工作,但这里有一种方法:
select (date_trunc(date_action, 'hour') +
(date_part('minute', date_action) / 6) * interval '10 minute'
) as time_interval,
action, count(*)
from t
group by time_interval, action
order by time_interval, action;