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
语法。但是,您应该能够使用 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
中不匹配 [=] 中任何内容的记录17=]。第二个查询仅获取 B
中的记录,这些记录与 A
中的任何内容都不匹配。使用 UNION ALL
而不是 UNION
可确保不删除重复项。
我想在 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
中不匹配 [=] 中任何内容的记录17=]。第二个查询仅获取 B
中的记录,这些记录与 A
中的任何内容都不匹配。使用 UNION ALL
而不是 UNION
可确保不删除重复项。