Представьте, что у нас есть база данных с таблицей журналов и таблицей типов.Я хочу сделать запрос, чтобы выяснить, есть ли в UserX записи для определенных типов журналов.Допустим, что UserX зарегистрировал type_1
и type_2
, но не type_3
.Я хочу написать простой запрос, чтобы увидеть, является ли это истиной или ложью.
Сначала я попробовал что-то вроде:
SELECT * FROM logs AS l
INNER JOIN types AS t
ON t.id = l.type_id
WHERE t.name = "type_1"
AND t.name = "type_2"
AND t.name != "type_3";
Но я быстро понял, что это невозможно сделатькак это, так как t.name
не может иметь несколько значений.Сейчас я попробовал несколько разных подходов, но, похоже, не могу найти подходящий для меня.Я уверен, что решение довольно простое, я просто не вижу его в данный момент.
Надеюсь, кто-то может указать мне правильное направление.
Я создал простую тестовую базу данных в этой скрипке, которую можно использовать для тестирования и примера: https://www.db -fiddle.com/ ж / nA6iKgCcJwKnXKsxaNvsLt / 0