1

SQL でのこの Twitter スタイルのフォロー フォロワー テーブルへの追加

上の例では、「userB が彼をフォローしている他のユーザーをフォローしている場合」というクエリを返すことができました。

今はもっとシンプルなものが必要です。元のコードを変更しようとしましたが、うまくいきませんでした。「userBがフォローしているかどうかに関係なく、ユーザーのいずれかをフォローしているかどうかが必要です。現在、その特定のユーザーをフォローしていない人にはnullを返します。

これは、ユーザー用のサンプル テーブルです。

id      user_id     
1           userA     
2           userB     
3           userC      
4           userD      
5           userE

これは、次のサンプル テーブルです。

id      user_id     follower_id
1           userA       userB
2           userD       userB

このフォロワー/フォロー状態を含む結果を返すのが好きです。たとえば、userB の場合 (彼は A と D に従いますが、C と E はフォローしません:

id      followedBy     areWeFollowing
1           userA       1
2           userB       0
3           userC       0
4           userD       1
5           userE       0

ご協力いただきありがとうございます!

アルダ

4

1 に答える 1

2

この状況では、2 番目のテーブルからカウントを取得することもできます -

select id,user_id, ( select count(*) 
                       from follows 
                      where follows.user_id = users.user_id
                        and follows.follower_id = 'userB') as areWeFollowing
from users
于 2013-05-21T19:26:52.057 に答える