私は次の表を持っています
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?
このクエリをより効率的に書く他の方法はありますか?