我有下表,想在末尾加一列。
运行数据:
name miles_ran date
josh 1 2020-01-01
troy 2 2020-01-01
mark 1 2020-01-01
josh 1 2020-01-01
troy 1 2020-01-02
我想按人分组,看看他们在某个日期跑了多少英里,所以我提出了以下查询。
SELECT name, SUM(miles_ran) FROM running_data WHERE date = '2020-01-01' GROUP BY name;
此查询的结果如下:
name miles_ran_sum
josh 2
troy 2
mark 1
但是,我想在末尾添加一列,对所有行显示“2020-01-01”。我怎么能这样做?
name miles_ran_sum date
josh 2 2020-01-01
troy 2 2020-01-01
mark 1 2020-01-01
谢谢。
2条答案
按热度按时间bfrts1fy1#
只需向
select
条款:wvt8vs2t2#
你可以用
Analytic
函数来获取此数据-因为您只需要特定日期的数据,所以我在sql中添加了一个条件。如果您选择提取所有日期的数据,请将其删除。
from(选择name,sum(miles\u ran)over(按名称分区,按名称排序的日期)miles\u ran\u sum,date from running\u data,其中date='2020-01-01')t;
备用方式-