0

我有两张表需要加入

table_A(ID, val), table_B(ID, val)

得到一张新桌子

RESULT(ID, value)

应该像这样填充值的位置

Case1:如果table_A和table_B中都存在ID,则值应为1,

情况2:如果ID只存在于table_A中,不存在于table_B中,则值应为0。

CREATE TABLE RESULT AS
SELECT A.ID, {TODO}
FROM table_A A 
   LEFT OUTER JOIN table_B B 
      On A.ID = B.ID

我知道我可以像上面那样使用左外连接,并将 {TODO} 替换为 COALESCE(B.ID, 0) 来处理第二种情况,但是如何在 SnappyData SQL 的一个 SQL 语句中也包含第一种情况?

4

1 回答 1

1

如果在左外连接过程中 id 存在于 A 中且 B 中不存在,则 B 的 Id 将为空

SELECT A.ID, (CASE WHEN B.ID is null THEN 0 ELSE 1 END) As value
  FROM TableA A left outer join 
       TableB B
 ON A.ID = B.ID
于 2017-10-11T23:16:30.957 回答