Два внутренних входа в MYSQL
Как бы я забил два внутренних соединения в одном запросе?
Т.е.: три таблицы
счет-фактура
Адрес
Клиент
У счета-фактуры есть столбец, который ссылается на идентификатор в клиентах. Он также имеет столбец, который ссылается на адрес. Мне нужно получить как имя клиента из сопоставленной таблицы, так и адрес из сопоставленной таблицы. Как бы я INNER JOIN
обе таблицы?
Я добавлю несколько деталей...
счет-фактура имеет адрес строки (идентификатор адреса ссылки), клиент (идентификатор идентификатора клиента), идентификатор и примечания
клиент имеет строки first_name, last_name
адрес имеет строки street_name и city
Мне нужно подтянуть
Ответы
Ответ 1
У вас может быть столько предложений JOIN, сколько вам нужно в запросе. Каждый из них имеет предложение ON, в котором вы указываете связанные столбцы между объединенными таблицами.
SELECT
columns
FROM
invoice
INNER JOIN
address
ON
join_condition
INNER JOIN
client
ON
join_condition
Ответ 2
Что-то вроде:
SELECT
c.*, i.*, a.*
FROM
invoices i
INNER JOIN
client c
ON
i.clientid = c.clientid
INNER JOIN
address a
ON
a.clientid = c.clientid
WHERE
i.id = 21
Не забывайте, что вы выбираете только нужные поля, а не * (все).