有没有一种方法可以对SQL中的datetime列进行分组?

时间:2020-07-06 20:53:52

标签: sql presto

我有一个类似这样的数据框。

Time                           DollarVal
2020-06-25 17:48:13.636          1000
2020-06-27 17:48:13.895          1000
2020-06-27 17:48:14.101          1000
2020-06-24 17:48:14.434          1000
2020-06-22 17:48:14.709          1000

有没有一种方法可以返回一个表格,该表格根据到分钟的时间将美元价值相加。 例如:

Time          DollarVal
17:48:13        2000
17:48:14        3000

请注意,原始数据集中的“时间”数据跨越了几天,但我只关心一天中的时间。

谢谢

1 个答案:

答案 0 :(得分:1)

我不确定是否有一种方法可以提取时间,但是您可以将其格式化为字符串:

select format_datetim(time, '%H:%i:%s') as time_only, sum(dollarval)
from t
group by time_only
order by time_only;

或者,您可以将值转换为时间(以Piotr的评论为准):

select cast(time as time) as time_only, . . .