SQL加入了混乱

时间:2013-11-16 08:45:09

标签: mysql sql sqlyog

这次加入有什么问题? 控制台说

Error Code: 1051
Unknown table 'invlabtes'


SELECT invlabtes.*, invgatepass.BuiltySupp FROM invlabtes FULL JOIN invgatepass ON(invlabtes.GatePassNO=invgatepass.InwardNo AND invlabtes.GatePassDate=invgatepass.EntryDate AND invlabtes.VehicleNo=invgatepass.VehicleNo) WHERE  invlabtes.Code='*****'

如果我用内连接替换完全连接,则查询返回一个条目。

我想要的是基于invlabtes.Code从invlabtes表中获取数据,即使连接条件失败并且invgatepass没有匹配的builtySupp

2 个答案:

答案 0 :(得分:1)

Mysql不支持FULL关键字并将其转换为表别名。所以你的invlabtes表现在名为FULL。

答案 1 :(得分:0)

如果要始终从invlabtes表返回数据,即使它在invgatepass中没有匹配,请尝试使用LEFT JOIN,因为Mysql不支持完全连接

SELECT 
invlabtes.*, invgatepass.BuiltySupp 
FROM 
invlabtes LEFT JOIN 
invgatepass 
ON
invlabtes.GatePassNO=invgatepass.InwardNo
AND 
invlabtes.GatePassDate=invgatepass.EntryDate 
AND 
invlabtes.VehicleNo=invgatepass.VehicleNo 
WHERE  
invlabtes.Code='*****'