我的发言如下:
select nomF from fournisseur as f, usine as u, puf, produit as p
where f.numF = puf.numF
and u.numU = puf.numU
and p.numP = puf.numP
where u.villeU in ('Paris','Créteil')我想用Inner Join重新创建它,但是我不知道怎么做,因为它有多个连接。
这就是我试过的,但我不知道它是否正确:
select nomF from fournisseur
inner join puf on numF
inner join usine on numU
inner join produit on numP
where usine.villeU in ('Paris','Créteil')请有人告诉我,我用inner join写的声明是否会返回与第一个相同的结果。
如果不是,我犯了什么错。
提前谢谢。
发布于 2014-03-14 01:16:41
对于内部联接,仍然需要指定要连接的列,就像对where子句所做的那样
select nomF
from fournisseur f
inner join puf ON f.numF = puf.numF
inner join usine u ON u.numU = puf.numU
AND u.villeU in ('Paris','Créteil')
inner join produit p ON p.numP = puf.numP发布于 2014-03-14 01:49:05
许多数据库支持using语法。这样你就可以做你想做的事了:
select nomF
from fournisseur inner join
puf
using (numF) inner join
usine
using (numU) inner join
produit
using (numP)
where usine.villeU in ('Paris','Créteil');https://stackoverflow.com/questions/22394274
复制相似问题