我想在 memsql 中有一个完整的外部连接。就像是
SELECT *
FROM A FULL OUTER JOIN B
ON A.id = B.id
是否可以 ?
我想在 memsql 中有一个完整的外部连接。就像是
SELECT *
FROM A FULL OUTER JOIN B
ON A.id = B.id
是否可以 ?
MemSQL似乎没有FULL OUTER JOIN
语法。但是,您应该能够使用LEFT
和RIGHT
OUTER JOIN
操作的组合在 MemSQL 中模拟完全外连接:
SELECT * FROM A
LEFT OUTER JOIN B ON A.id = B.id
UNION ALL
SELECT * FROM A
RIGHT OUTER JOIN B on A.id = B.id
WHERE ISNULL(A.id)
第一个SELECT
覆盖橙色区域,即匹配记录之间的记录以及A
不匹配的记录。第二个查询仅获取与 中的任何内容都不匹配的记录。使用而不是确保不删除重复项。B
A
B
B
A
UNION ALL
UNION