首页 > 解决方案 > 我必须使用 SQL 来获取一个问题所花费的总时间。我无法获得总时间并以分钟或 H:M:S 格式提供答案

问题描述

我试图找出每人花费的总时间,并以使用 SQL 的总分钟数提供答案。page_start_time为时间数据类型。数据如下图:

数据

这是访客表。我需要使用每个USER_ID的page_start_time 字段查找总时间。我尝试了以下代码:

select sum(datediff(minute, 0, page_start_time)) as Totalnumberofminutesspent, User_id
from visitors
GROUP   BY user_id
ORDER BY Totalnumberofminutesspent DESC;

我得到以下答案:

回答

当我手动检查时,答案不正确。

标签: sqlsql-serverdatabase

解决方案


我猜你想要每个用户的最小和最大时间之间的差异:

select user_id,
       datediff(minute, min(page_start_time), max(page_start_time) as Totalnumberofminutesspent
from visitors
group by user_id
order by Totalnumberofminutesspent desc;

推荐阅读