【发布时间】:2018-10-26 21:05:14
【问题描述】:
我的数据库在第一列中包含用户 ID 和某些操作的时间戳(登录或单击按钮)。第一条记录(用户 ID、时间)始终是用户登录,有时还有第二条记录,这意味着用户也单击了按钮 - 但情况并非总是如此。具有相同用户 ID 的行永远不会超过 2 行。
"userID" "time"
"0" "1526474096000"
"1" "1526474097000"
"2" "1526474098000"
"3" "1526474099000"
"4" "1526474100000"
"1" "1526474106000"
"0" "1526474107000"
例如,这里只有 ID 为 0 和 1 的用户点击了按钮。
我想计算时间差的直方图(或其他近似值),因为用户太多,我的 RAM 无法为每个用户导入时间差。
我的 SQL 查询看起来像这样(n 是一些直方图 bin 大小):
SELECT COUNT(*), (MAX(time)-MIN(time)/n) as time_difference
FROM table_name
GROUP BY userID, time_difference
它不起作用,因为“GROUP BY 子句中不允许使用聚合函数”。
【问题讨论】:
标签: sql sqlite group-by max min