У меня есть таблица с пользователямиSELECT, пользователи и сосчитать объекты, используемые совместно в MySQL
и стол с "общим" событий
если я Скотт (ID = 1), как я могу выбрать ТОЛЬКО пользователей, которые делятся моими событиями И добавьте специальный столбец с номером от общих событий, подобных этому
---- решаемые ----
Эти два запроса сделать работу:
Благодаря user6368519
SELECT
t2.ID,
t2._name,
t2._email,
COUNT(*) _shared
FROM _user_events t1
INNER JOIN _users t2 ON (t1._user = t2.id)
WHERE _event IN (SELECT _event FROM _user_events t3 WHERE t3._user = 1)
AND t1._user <> 1
GROUP BY 1,2
Благодаря S. Garces
SELECT
users.ID,
users._name,
users._email,
(
SELECT COUNT(*)
FROM _user_events
WHERE _user = users.ID
AND _event IN (
SELECT _event FROM _user_events WHERE _user = 1
)
) as _shared
FROM _users users
WHERE ID != 1
AND ID IN (
SELECT _user
FROM _user_events
WHERE _event IN (
SELECT _event FROM _user_events WHERE _user = 1
)
)