Я работаю над базой данных генеалогии. Проще говоря, одна таблица называется ancestors
, состоит из записей со следующей структурой:Как сделать несколько самостоятельных соединений в mysql?
name_id | name | mother_id | father_id
---------+------+-----------+-----------
1 | John | 2 | 3
2 | Mary | 4 | 5
3 | Dave | 6 | 7
Первый запрос находит родительские идентификаторы для Джона: например, у Джона есть родители с идентификаторами 2 и 3
Затем еще два запросы найти родительские имена для родительских идентификаторов: родителя идентификатор 2 имеет имя Мария, и родительский идентификатор 3 имеет имя Dave
Три запросы были использованы, чтобы найти, что: Джона есть родители называют Мэри и Дэйвом.
Можно ли это сделать с помощью одного запроса, и будет ли какой-либо выигрыш в производительности?