Например, есть пользователи, которые читали книги с номерами ниже:
History (1002,1424,2512,4625,1245)
Art (1592,6413,5030,5362)
Fantasy (5929,5920,1245,2152)
И пользователи (a, b, c, d, e)
Я хочу знать, как сделать запрос mysql по вышеуказанным критериям. Я хочу знать, сколько пользователей прочитали все книги по истории, искусству или фэнтези. Так что один из пользователей, прочитавший все книги по истории, искусству или фэнтези, должен быть задержан.
SELECT
count(distinct Users) as User
FROM
table
WHERE
book_id in (1002,1424,2512,4625,1245) or
book_id in (1592,6413,5030,5362) or
book_id in (5929,5920,1246,2152)
И Вышеприведенный запрос, похоже, не содержит всех книг, потому что я использовал 'in'.
, поэтому таблица может выглядеть следующим образом
user| book_id | category
---------------------------------------
a | 1002 | History
a | 1424 | History
a | 2512 | History
a | 4625 | History
a | 1245 | History
a | 2152 | Fantasy
b | 1592 | Art
b | 6413 | Art
b | 5030 | Art
b | 5362 | Art
c | 5929 | Fantasy
---------------------------------------