У меня есть база данных, макет которой находится вне моего контроля, которая содержит два объекта: «Личность» и «Тит». Каждый человек может иметь несколько признаков, и каждый признак может быть связан с несколькими лицами. Там есть промежуточный объект для этого отношения:Присоединить элементы, которые не входят в группу
До сих пор так хорошо. Я хочу создать список со всеми чертами, лицами, у которых есть определенный признак, а лица, которые делают , не, имеют тот же признак. Позитивы просты:
SELECT t.id,
t.name,
positives.count,
positives.members
FROM Trait t
JOIN (
SELECT t.id,
count() AS count,
group_concat(p.name) AS members
FROM Person p
JOIN Person_Trait pt ON pt.id_person = p.Id
JOIN Trait t ON t.id = p.id_trait
GROUP BY t.id
)
AS positives ON t.id = positives.id;
Однако я не понимаю, как получить отрицательную группу, чтобы я мог присоединиться к ней. Есть идеи?
Я могу сделать вид, если это может помочь.
Это отлично работает, спасибо большое. Это было более очевидно, что я ожидал, но я не знал о КРОМЕ. – Kyte