我试图在一个月的窗口中计算一天中与给定track_uri
相关联的playlist_uri
并编写以下sql:
SELECT
playlist_uri, playlist_date, track_uri, count(track_uri)
over (partition by playlist_uri, playlist_date) as count_tracks
FROM
tbl1
WHERE
_PARTITIONTIME BETWEEN '2017-09-09' AND '2017-10-09'
AND playlist_uri in (
SELECT playlist_uri from tbl2 WHERE playlist_owner = "spotify"
)
但是我得到以下输出:
我希望每天向我显示track_uri
每个playlist_uri
的数量。
真的很感激一些帮助。
答案 0 :(得分:1)
不确定我是否正确理解了您的问题,但如果您可能不需要使用窗口功能:
SELECT
playlist_uri, playlist_date, COUNT(DISTINCT track_uri)
FROM
tbl1
WHERE
_PARTITIONTIME BETWEEN '2017-09-09' AND '2017-10-09'
AND playlist_uri in (
SELECT playlist_uri from tbl2 WHERE playlist_owner = "spotify"
)
GROUP BY 1, 2;