memsql 是否支持 Full Outer Join?

Does memsql support Full Outer Join?

我想在 memsql 中有一个完整的外部连接。像

SELECT *
FROM A FULL OUTER JOIN B
ON A.id  = B.id

可能吗?

MemSQL 似乎没有 FULL OUTER JOIN 语法。但是,您应该能够使用 LEFTRIGHT 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 覆盖橙色区域,即 AB 之间的匹配记录以及 A 中不匹配 [=] 中任何内容的记录17=]。第二个查询仅获取 B 中的记录,这些记录与 A 中的任何内容都不匹配。使用 UNION ALL 而不是 UNION 可确保不删除重复项。