Sql 跨两个表的不同计数-是否使用外部联接?

Sql 跨两个表的不同计数-是否使用外部联接?,sql,postgresql,join,Sql,Postgresql,Join,我试图在Z_KSS和Z_KSS2中查找计数(不同的MEM_ID)。如果一个MEM_ID同时出现在Z_KSS和Z_KSS2中,则只应计算一次。我使用外部连接吗?我是否需要指定On条件 Select count (distinct MEM_ID), sum(Amount) , 'KSS' Company FROM temp_09.Z_KSS FULL OUTER JOIN temp_09.Z_KSS2 我猜您希望联合所有人: SELECT count(d

我试图在Z_KSS和Z_KSS2中查找计数(不同的MEM_ID)。如果一个MEM_ID同时出现在Z_KSS和Z_KSS2中,则只应计算一次。我使用外部连接吗?我是否需要指定On条件

Select count (distinct MEM_ID), sum(Amount)
      , 'KSS' Company
      FROM    temp_09.Z_KSS
       FULL OUTER JOIN temp_09.Z_KSS2

我猜您希望
联合所有人

SELECT count(distinct MEM_ID), sum(Amount), 'KSS' Company
FROM  ((SELECT MEM_ID, Amount
        FROM temp_09.Z_KSS
       ) UNION ALL
       (SELECT DISTINCT MEM_ID, Amount
        FROM temp_09.Z_KSS2
       )
      ) t;

编辑您的问题并提供示例数据和所需结果。我只是尝试同时查询两个表中的相同内容-两个表中的计数(不同的MEM_ID)。
MEM_ID在两个表中是否唯一?Union All与Outer Join相比有何特殊优势?@ZJAY。即使
MEM\u ID
在任一表中重复,If也应生成正确答案。