Вложенный SQL-запрос - PullRequest
       19

Вложенный SQL-запрос

1 голос
/ 03 октября 2010

У меня есть следующие таблицы:

Клуб: Club_ID | Название | Created_Date | ...

Club_Intesect: User_ID | Club_ID | Доступ

Я пытаюсь выбрать переменное количество клубов и присоединить идентификатор пользователя с самым высоким уровнем доступа в этом клубе. Этот человек считается владельцем.

Так что, если в Club 100 есть Члены A, B, C с доступом 3,4 и 5 соответственно: я хочу, чтобы последний запрос был выбран из клуба:

 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 |
      ...

Ответы [ 2 ]

1 голос
/ 03 октября 2010
SELECT * FROM Club WHERE CLUB_ID = (SELECT Club_ID FROM Club_Intersect ORDER BY Access DESC LIMIT 1);

Я думаю, что это будет работать для выбора нужного вам клуба, используя вложенный SQL-запрос.Вы не указали, что вы хотели в ваших возвращенных результатах, потому что этот запрос будет получать только столбцы Club.

1 голос
/ 03 октября 2010
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)

Не проверено, но вы поняли

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...