2
video_id ip_address
1 192.168.1.1
1 192.168.1.1
1 192.168.1.2
2 192.168.1.2
2 192.168.1.2
2 192.168.1.2
运行下面的查询返回每部影片的每个IP地址的唯一请求量。
SELECT video_id, COUNT(*) as num_unique_requests FROM
(SELECT video_id, ip_address FROM videos
GROUP BY video_id, ip_address) t
GROUP BY video_id
ORDER BY num_unique_requests DESC
video_id num_unique_requests
1 2
2 1
有没有什么方法可以让我窝在最里面的GROUP BY
声明与另一GROUP BY
语句,以便我能避免产生最外层的语句GROUP BY
video_id?
是否有任何其他方式来更有效地编写这个查询?