Это настройка:
Таблица A имеет соединение с таблицей B. В таблице B имеется несколько записей (от 0 до n), которые могут иметь соответствующую запись в таблице A.
Как мне сформировать запрос, который дает мне запись из таблицы A, только если в таблице B существует определенное количество совпадающих записей?
Пример:
В таблице А есть одежда. Таблица B содержит атрибуты для одежды.
Таблица B имеет внешний ключ к таблице A, поэтому она будет выглядеть примерно так:
id fid_clothing1 attributeA
id fid_clothing1 attributeB
id fid_clothing1 attributeC
id fid_clothing2 attributeA
id fid_clothing2 attributeB
Теперь мне нужна только одежда с атрибутом attributeA
И attributeB
И attributeC
. Это не проблема, если я делаю OR-запрос, но я не могу просто сделать что-то вроде:
SELECT * from tableA
LEFT JOIN tableB on tableB.fid_cloting = tableA.id
WHERE attribute='A' AND attribute='B' AND attribute='C'
Это условие никогда не будет оцениваться как истинное. Как мне это сделать?