質問

次の表があります。

クラブ:Club_id |タイトル| created_date | ...

Club_intesect:user_id | Club_id |アクセス

さまざまな数のクラブを選択し、そのクラブで最高のアクセスを持つユーザーのIDに参加しようとしています。この人は所有者と見なされます。

したがって、Club 100には、それぞれ3,4、および5のメンバーA、B、Cがあります。それぞれ:最終クエリをクラブから選択したい場合:

 Club.Club_ID     Club.Title        Club.Created_Date  Club_Intersect.User_ID

      100         |  "Test Club"   |  "Creation Date"     |       C             |
      101         | "Test Club 2"  |  "Creation_Date"     | Highest Access User |
      ...
役に立ちましたか?

解決

SELECT * FROM Club c
JOIN Club_Intesect ci ON ci.Club_ID = c.Club_ID
WHERE ci.Access = (SELECT MAX(Access) FROM Club_Intesect WHERE Club_ID = c.Club_ID)

テストされていませんが、アイデアが得られます

他のヒント

SELECT * FROM Club WHERE CLUB_ID = (SELECT Club_ID FROM Club_Intersect ORDER BY Access DESC LIMIT 1);

ネストされたSQLクエリを使用して、あなたが望むクラブを選択するのに役立つと思います。このクエリはクラブの列のみを取得するため、返された結果で望むものを指定しませんでした。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top