gpt4 book ai didi

Mysql - 逆 3 表查询

转载 作者:行者123 更新时间:2023-11-29 16:38:50 26 4
gpt4 key购买 nike

我有一个查询,它给我一个公司列表(tblprov)及其相应的类别(tblrubro)

两个表通过查找表 (tblprovxrubro) 相关

SELECT p.id, p.name, r.idCat, r.rubroDesc FROM tblprov p
JOIN tblprovxrubro pr on p.id = pr.idFirm
JOIN tblrubros r on pr.idCat = r.idCat
WHERE p.id = 20

在此示例中,我有一家公司与 2 个公司类别相关,因此查询将给出此结果

id     |  razonSocial |  idCat    |   catDesc  |
20 | Firm 1 | 2 |Electronics |
20 | Firm 1 | 3 | Software |

如果我需要了解与该公司无关的相反类别怎么办?

想不通

最佳答案

您可以从类别表到连接表执行LEFT JOIN。类别表将位于最左侧,因为您想要考虑所有类别。所有在联结表中没有 pid = 20 对应行的类别将是您所需的结果。我们使用 IS NULL 比较运算符来考虑这些行。

SELECT r.idCat, r.rubroDesc 
FROM tblrubros r
LEFT JOIN tblprovxrubro pr
on pr.idCat = r.idCat AND
pr.idFirm = 20
WHERE pr.idCat IS NULL

关于Mysql - 逆 3 表查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53450283/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com