我试图获得给定间隔的项目计数,但没有指定开始或停止时间。我想你可以用窗口功能来做,但我不太清楚如何去做。
问题如下我想知道在给定的任意间隔内人们登录网站的次数是20分钟。
示例A
[Semantical Error] line 0, col 91 near 'client_id': Error: Class AppBundle\Entity\Measurement has no field or association named client_id
在上面的例子中,我将突出显示项目(2,3),(3,4,5),(4,5,6),(5,6)我想要的输出是
1. 2015-06-24 23:00:00
2. 2015-06-24 23:45:00
3. 2015-06-25 00:00:00
4. 2015-06-25 00:15:00
5. 2015-06-25 00:17:00
6. 2015-06-25 00:21:00
此外,只保留数据> count> = 2,否则一切都将成为有效的分组
现在是一个窗口功能我应该去的方式,cte还是有另一种习惯采用?
答案 0 :(得分:1)
使用自联接尝试此查询:
C:\wamp\www\projectname\app>
答案 1 :(得分:0)
您可以通过以下查询获取计数的每个“日”组:
SELECT MIN(last_seen_at), MAX(last_seen_at), COUNT(*)
FROM user_kinds
GROUP BY DATE(last_seen_at)
ORDER BY DATE(last_seen_at) DESC LIMIT 5;
在我的样本数据集中产生的结果如下:
2015-06-26 00:12:30.476548 | 2015-06-26 22:06:25.134322 | 69
2015-06-25 00:46:03.392651 | 2015-06-25 23:49:46.616964 | 14
2015-06-24 14:22:33.578176 | 2015-06-24 23:39:01.32241 | 10
2015-06-23 01:42:53.438663 | 2015-06-23 20:12:21.864601 | 2
(5 rows)