0

这个连接有什么问题???控制台说

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

4

2 回答 2

1

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

于 2013-11-16T08:57:53.200 回答
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='*****'
于 2013-11-16T09:55:14.397 回答