Существует 3 отношения:
person(id, first_name, original_surname, new_surname, birth_date)
marriage(m_id, w_id, date)
child_of(child_id, father_id, mother_id)
и запросдля половины братьев и сестер это:
(
select P1.id, P2.id
from (
person join child_of on id=child_id
) as P1
natural join (person join child_of on id=child_id) as P2
using (father_id)
where P1.mother_id < P2.mother_id
)
union
(
select P1.id, P2.id
from (
person join child_of on id=child_id
) as P1
natural join (person join child_of on id=child_id) as P2
using (mother_id)
where P1.father_id < P2.father_id
)
Я новичок в SQL и пытаюсь понять, что происходит "за кулисами".Какая таблица создается в конце, и как запрос находит половинных братьев и сестер.
Создается ли P1, затем он соединяется с P2, а затем они оба объединяются, и как where
влияет на таблицу?
Каков здесь хронологический порядок вещей, что происходит первым, вторым ...