Leetcode_614.二級注目者
1569 ワード
問題の難易度
中程度
タイトルの説明
Facebookでは、テーブルfollowにはfollowee、followerの2つのフィールドがあり、それぞれ注目者と注目者を表します.sqlクエリー文を書いてください.各注目者に対して、彼の注目者の数をクエリーします.
followee
follower
A
B
B
C
B
D
D
E
しゅつりょく
follower
num
B
2
D
1
BとDはいずれもfollowerフィールドに現れ,注目者としてBはCとD,DはEに注目される.Aはfollowerフィールドにないので、Aは出力リストにありません.
正解
DISTINCTの詳細は忘れやすく、注目者を数えるときは覚えておいてください.一人一人がアカウントに注目され、一人としてしか計算できません.(注目して関門を取ったり注目したりする場合がありますが、いずれも表に記録されています)
ソース:力ボタン(LeetCode)リンク:https://leetcode-cn.com/problems/second-degree-follower
中程度
タイトルの説明
Facebookでは、テーブルfollowにはfollowee、followerの2つのフィールドがあり、それぞれ注目者と注目者を表します.sqlクエリー文を書いてください.各注目者に対して、彼の注目者の数をクエリーします.
followee
follower
A
B
B
C
B
D
D
E
しゅつりょく
follower
num
B
2
D
1
BとDはいずれもfollowerフィールドに現れ,注目者としてBはCとD,DはEに注目される.Aはfollowerフィールドにないので、Aは出力リストにありません.
正解
SELECT followee AS follower,COUNT(DISTINCT follower) AS num
FROM follow f1
WHERE EXISTS (SELECT 1 FROM follow f2 WHERE f1.followee=f2.follower)
GROUP BY followee
DISTINCTの詳細は忘れやすく、注目者を数えるときは覚えておいてください.一人一人がアカウントに注目され、一人としてしか計算できません.(注目して関門を取ったり注目したりする場合がありますが、いずれも表に記録されています)
ソース:力ボタン(LeetCode)リンク:https://leetcode-cn.com/problems/second-degree-follower