MySQL INNER JOIN таблица Столбец 'ID', где предложение неоднозначно

Caesar Krit спросил: 07 октября 2018 в 01:25 в: mysql

этот код создал ошибку.

Код ошибки: 1052. Идентификатор столбца, в котором предложение неоднозначно

      SELECT h1.name, h1.gender,h2.gender
        FROM hampster h1, hampster h2,partner p
        INNER JOIN partner on h1.ID = partner.ID1
        INNER JOIN children on h2.ID = children.ID1
WHERE h1.id = p.id1
  AND h2.id = p.id2
  AND h1.gender = h2.gender
  AND EXISTS (SELECT c.id1
            FROM children c
            WHERE c.id1 = p.id1
             OR  c.id1 = p.id2)
ORDER BY h1.gender, h1.name;

Это создается, когда я добавляю хемпстеров h2 в свой запрос. моя цель состоит в том, чтобы использовать внутреннее соединение, чтобы объединить два экземпляра таблицы hamspter и по-прежнему использовать "h1" и "h2" для ссылки на них.

Это ожидаемый результат запроса

h1.name    h2.name gender
Alex        King    0
Grant       Alex    0
Jack        Grant   0
Cathy       Amy     1
Trish       Amy     1

0 ответов