MySQL的加入查询:两个主要的和一个链接表

主维达:

我有一个星球大战的项目,我的工作的统一。

在我的数据库,我有多个表和链接表。我想查询

“什么运输方式已经使用了雷伊,欧比旺·克诺比和C-3PO?”

答(显然)是千年隼。

我已经设置了使用内部连接的查询,但我被困在最后。

SELECT t.type AS OnlyTransportItCouldBe 
FROM transport AS t
INNER JOIN person_transport AS pt
ON pt.transport_id = t.id
INNER JOIN person AS p
ON pt.person_id = p.id
WHERE p.name = 'Rey'

以上的回报3艘,但我confuddled至于怎么也查古本和黄花。我试着AND p.name = "Obi-Wan Kenobi"和它返回空白。如果我尝试WHERE p.name = 'Rey', 'Obi-Wan Kenobi'失败,如果我尝试WHERE p.name = 'Rey' AND 'Obi-Wan Kenobi',结果是空白。我知道这是很简单的东西,但我似乎无法找到解决的办法。

废去。

如果您的要求是得到普遍已经使用的运输方式雷伊欧比旺·克诺比C-3PO,那么你必须group by type添加一个having条款喜欢ethis:

SELECT t.type AS OnlyTransportItCouldBe 
FROM transport AS t
INNER JOIN person_transport AS pt ON pt.transport_id = t.id
INNER JOIN person AS p ON pt.person_id = p.id
WHERE p.name IN ('Rey', 'Obi-Wan Kenobi', 'C-3PO')
GROUP BY t.type
HAVING COUNT(DISTINCT p.name) = 3

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将表拆分为两个表和一个链接表

如何通过一个查询删除两个链接表(多对多关系)中的数据?

MySQL-查询以显示两个链接表的单个记录,其条件仅在其中一个条件中

PHP / MySQL:如何从链接表链接的两个表中查询数据

带有两个链接表的 SQL 查询

MySQL在同一个表中加入两个查询

MySQL将两个表与另一个表链接并运行过滤的查询

mysql查询加入,比较两个表并返回第一个表中的所有记录

MySql 慢查询,在两个表上都有一个连接和条件

MySQL的一个表加入一个科拉姆在另外两个数()

在一个查询中从两个表中删除而不加入

加入同一个表的两个 SQL 选择查询并过滤

mysql在一个表中加入两个表行

在 MySQL 中加入两个查询以将一个查询的结果映射到另一个

加入两个mysql表并在php中填充一个数组

从两个链接表中删除数据

在mysql中加入两个表,其中一个值对应另一个表中的两个值

从两个不同的表中加入 2 个选择查询(一个查询包括一个聚合函数)

MySQL 查询根据来自两个不同表的值选择一个表。

MySQL性能问题在一个简单的两张表上加入查询

如何让我的SQL查询的准确结果在一个链接表

MySQL一个结果来自同一表中的两个查询

在mysql中加入两个表

MySQL 加入两个表

两个线程查询一个表

PHP:在一个查询中的两个表

MySQL查询加入同一个表

MySQL 两次加入一个表

mysql 查询引用同一个表的两个外键