Подтвердить что ты не робот

Два внутренних входа в MYSQL

Как бы я забил два внутренних соединения в одном запросе?

Т.е.: три таблицы


счет-фактура Адрес
Клиент

У счета-фактуры есть столбец, который ссылается на идентификатор в клиентах. Он также имеет столбец, который ссылается на адрес. Мне нужно получить как имя клиента из сопоставленной таблицы, так и адрес из сопоставленной таблицы. Как бы я INNER JOIN обе таблицы?

Я добавлю несколько деталей...
счет-фактура имеет адрес строки (идентификатор адреса ссылки), клиент (идентификатор идентификатора клиента), идентификатор и примечания клиент имеет строки first_name, last_name адрес имеет строки street_name и city

Мне нужно подтянуть

4b9b3361

Ответ 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

Не забывайте, что вы выбираете только нужные поля, а не * (все).