2016-03-20 12 views
0

ユーザaとbが共通する共通の映画の数を返そうとしています。結果をnum >= 50に制限しようとしました。私はカウント結合とカウントを制限する

。エラー「無効な表の別名または列参照 『NUM』を受け取り、私は相関サブクエリを使用する必要がありますか?

私が行う場合は、例を提供してくださいすることができます。

SELECT 
a.user_id, b.user_id, count(*) AS num, collect_set(m.movie_title) 
FROM 
ratings a 
JOIN 
ratings b 
ON 
(a.movie_id = b.movie_id) 
JOIN 
movies m 
ON 
(a.movie_id = m.movie_id AND b.movie_id = m.movie_id) 
WHERE 
(a.user_id <> b.user_id AND num >= 50) 
GROUP BY 
a.user_id, b.user_id; 

答えて

1

ちょうどGROUP BYの後にHAVING count(*)>=50を追加してください

+0

ありがとう私は誰かがあなたがハイブで 'HAVING'を使用することはできないと言ったと思ったが、うまくいった。 –

関連する問題