[英]Two Inner Joins MYSQL
我将如何在一个查询中执行两个内部联接?
即:三张表
发票
地址
客户
发票有一列引用客户中的 id。 它还有一个引用地址的列。 我需要从匹配表中获取客户端名称和匹配表中的地址。 我将如何INNER JOIN
这两个表?
我会添加一些细节...
发票有行地址(引用地址 id)、客户端(引用客户端 id)、id 和注释客户端有行 first_name、last_name 地址有行 street_name 和 city
我需要拉起来
您可以在查询中拥有所需数量的JOIN子句。 每个子句都有一个ON子句,您可以在其中指定连接表之间的相关列。
SELECT
columns
FROM
invoice
INNER JOIN
address
ON
join_condition
INNER JOIN
client
ON
join_condition
就像是:
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
别忘了你只选择你需要的字段,而不是*(全部)。
基于从上面的@Dan Grossman学习的示例例如:
SELECT FILM.TITLE, ACTOR.FIRST_NAME, ACTOR.LAST_NAME FROM ACTOR
INNER JOIN FILM_ACTOR
ON ACTOR.ACTOR_ID = FILM_ACTOR.ACTOR_ID
INNER JOIN FILM
ON FILM_ACTOR.FILM_ID = FILM.FILM_ID
WHERE ACTOR.FIRST_NAME = 'Nick' AND ACTOR.LAST_NAME = 'Wahlberg'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.