首页 > 解决方案 > 如何用指向其他表主键的外键连接 2 个表以返回 SQL 中具有此类主键的所有行?

问题描述

请帮助我需要在 2 个表中获取外键指向 table_a 的行,如图所示。我试过以这种方式加入,


SELECT * FROM table_a 
INNER JOIN table_b
ON table_a.id = table_b.my_col
INNER JOIN table_c
ON table_a.id = table_c.my_col



但它返回空结果。请帮我修复这样的 SQL JOIN 语句

请查看我制作的显示这些表格的照片以及更多详细信息

在此处输入图像描述

标签: mysqlsqljoinselect

解决方案


可能是您在 table_b 和 table_c 中没有有效的匹配项(您的 table_a 的 ID 与 table_b 和 table_c 中的值不匹配)

尝试使用左连接

SELECT * 
FROM table_a 
LEFT  JOIN table_b ON table_a.id = table_b.my_col
LEFT  JOIN table_c ON table_a.id = table_c.my_col

推荐阅读