答案 0 :(得分:2)
MySQL不支持完全外连接,但您可以将其模拟为左右连接查询之间的联合:
SELECT * FROM pbsdev3.item t1
LEFT JOIN pbsdev3.item_ledger_entry t2 ON t1.No_ = t2.Item_No_
UNION ALL
SELECT * FROM pbsdev3.item t1
RIGHT JOIN pbsdev3.item_ledger_entry t2 ON t1.No_ = t2.Item_No_
WHERE t1.No_ IS NULL
请注意,一般情况下,如果您发现自己经常进行完全外部联接,则可能意味着您的密钥和数据模型没有很好地定义。 MySQL不支持完全连接的一个原因可能是你不应该使用它。
答案 1 :(得分:0)
<form>
在MySQL中非常痛苦。我要注意的第一件事是它不应该被需要。这些项目应该在两个表格中匹配,因此Full outer join
或inner join
就足够了:
left join
如果您确实需要SELECT i.*, ile.*
FROM pbsdev3.item i LEFT JOIN
pbsdev3.item_ledger_entry ile
ON i.No_ = ile.Item_No_;
,请将所有项目聚集在一起并使用full outer join
:
left join