如何imbricate选择并加入mysql?

问题描述 投票:1回答:1

我使用MySQL和JPA 1.9.4

我需要叠加多个连接以检索具有特定对象C的对象列表A,我可以通过对象B找到该对象。

实体A:id b_id实体B:id c_id实体C:id号

在这里,我想检索一个A的列表,例如C.number等于1。

我试图链接左连接和叠加选择表。

尝试A-B的例子:这个有效。

SELECT * FROM A a LEFT JOIN B b ON a.b_id = b.id;

尝试B-C的例子:这个也有效。

SELECT * FROM B b LEFT JOIN C c ON b.c_id = c.id WHERE c.number = 1;

尝试A-B-C的例子:这个不起作用。

我开始只是尝试从A-B重命名新表,mysql说“重复列名'id'”我做了其他几次尝试,但我显然有语法问题,我没有成功解决自己。

  SELECT * FROM (SELECT * FROM A a LEFT JOIN B b ON a.b_id = b.id) AS a_inter;

总结一下,我成功获得A-B或B-C,但从未获得A-B-C表,然后检索我感兴趣的A对象列表。

请问你能帮帮我吗?

谢谢,

我的

mysql jpa
1个回答
0
投票

答案在评论中。

SELECT * FROM A a LEFT JOIN B b ON a.b_id = b.id LEFT JOIN C c ON b.c_id = c.id WHERE c.number = 1;

感谢MattOverF。

© www.soinside.com 2019 - 2024. All rights reserved.