Sql 数据集中每天的平均条目数
我有下表Sql 数据集中每天的平均条目数,sql,tsql,Sql,Tsql,我有下表 Name|Date |Activity Ann |2016-01-01|Sleep Ann |2016-01-01|Walk Pete|2016-01-01|Sleep Pete|2016-01-01|Walk Pete|2016-01-01|Swim 这张桌子放了整整一年,供100多人使用。我想得到每个人的平均活动量。像 Ann |3.3, Pete|4.2 也就是说,安在数据集时间范围内每天做3.3项活动 我尝试过的是 Select count(Date), Na
Name|Date |Activity
Ann |2016-01-01|Sleep
Ann |2016-01-01|Walk
Pete|2016-01-01|Sleep
Pete|2016-01-01|Walk
Pete|2016-01-01|Swim
这张桌子放了整整一年,供100多人使用。我想得到每个人的平均活动量。像
Ann |3.3,
Pete|4.2
也就是说,安在数据集时间范围内每天做3.3项活动
我尝试过的是
Select count(Date), Name from table
group by date, name
但是当我运行这个程序时,每个名字都会有多个条目。有人能帮我完成这个查询吗?使用以下查询:
SELECT Name, [Date], COUNT(*) AS cnt
FROM mytable
GROUP BY Name, [Date]
你可以得到每个人每天的活动数量。您可以将上述内容包装在子查询中并应用AVG
,以获得每个人的平均活动数量:
SELECT Name, AVG(cnt*1.0)
FROM (
SELECT Name, [Date], COUNT(*) AS cnt
FROM mytable
GROUP BY Name, [Date]) AS t
GROUP BY t.Name