PHP – 外键连接的3个表
作者:互联网
我有一个表TableA,其中包含表TableB和TableC的2个不同的外键.我正在尝试从表TableB中获取数据,但取决于表TableC中的值.
通过此查询,我可以获取所有值,但是我不知道如何编写where子句来过滤和获取所需的数据.
SELECT TableC.value1,TableB.value2
FROM TableA
JOIN TableB ON TableB.ID = TableA.ID
JOIN TableC ON TableC.ID = TableA.ID
编辑:
我桌子的图片.
所以我试图显示表B中的数据,但仅显示表C中匹配的数据.
新编辑:
我从2个表中获取值,但是现在我只需要显示等于“ val2”的列A值. B列的值为“ val2”,“ val2”,“ val3”等的图像.我只需要显示“ val2”即可.
解决方法:
您不必使用WHERE子句.您需要的是修复您的JOIN,并使其成为条件TableA.TableC_ID = TableC.ID的JOIN tablec,如下所示:
SELECT TableC.value1,TableB.value2
FROM TableA
JOIN TableB ON TableB.ID = TableA.ID
JOIN TableC ON TableA.TableC_ID = TableC.ID
WHERE tableA.ColumnA = 'val2';
标签:primary-key,inner-join,foreign-keys,mysql,php 来源: https://codeday.me/bug/20191028/1955454.html