搜尋

首頁  >  問答  >  主體

取得同時被某人關注並且追蹤該人的用戶的SQL查詢

我有一個場景,我想尋找正在關注用戶 X 且用戶 X 正在關注他們的用戶。

查看以下架構: 帶有測試值的資料庫表

我們有follower_id和following_id, 現在假設我們要檢查 id 23 的用戶是否正在關注某人並且他們也正在關注他。

如您所見,用戶 22 正在關注用戶 23, 因此我們希望從用戶表中獲取用戶 22 的詳細信息,例如姓名和電子郵件。

用戶 23 追蹤了 24,但用戶 24 沒有關注用戶 23,因此我們不會將用戶 24 包含在清單中。

請幫我編寫查詢以取得上述場景的使用者清單。 謝謝

更新

因為我需要更多有關用戶的資訊。我現在正在 Laravel 中實現一個緩慢的解決方案。

$UsersIAmFollowing = UserFollowing::where('follower_id', $user->id)->get();
        $UsersFollowingMe = UserFollowing::where('following_id', $user->id)->get();
        $friends = [];
        foreach ($UsersIAmFollowing as $userIamFollowing) {
            foreach ($UsersFollowingMe as $userFollowingMe) {
                if($userIamFollowing->following_id == $userFollowingMe->follower_id){
                    array_push($friends, User::find($userIamFollowing->following_id));
                }
            }
        }

        dd($friends);

P粉562845941P粉562845941242 天前338

全部回覆(1)我來回復

  • P粉356128676

    P粉3561286762024-03-30 15:18:57

    雷雷

    ###ID### 7 ###22### ###23### ###23### ###22###

    回覆
    0
  • 取消回覆
  • follow_id 下面_id
    6