Amazon Redshift - 加入表并找出无与伦比的行

时间:2018-05-14 07:35:50

标签: amazon-web-services amazon-redshift

我有两个表,其伪结构如下:

User_master

user   pfid
------------
reno    2
andrew  3
reno    4
rosh    5
rosh    8
john    7

HR_master

user    pfid
-------------
andrew   3
reno     4
rosh     9
john     12

Roaster_master

user    pfid
--------------
andrew   3
reno     4
rosh     10
john     12

我需要在列用户上加入所有3个表,并在HR_master中找到pfid与User_master中任何等效条目不匹配的行。如果你注意到“reno”匹配的一个条目,而“rosh”的条目都没有匹配。

如果 User_master 中只有一个条目,这将是一项简单的任务,由于多行而出现并发症。

预期输出

USM.user   USM.pfid   HRM.pfid   RM.pfid
-----------------------------------------
  rosh       5|8        9           10
  john        7         12          12

如所询问的,这是我编译的查询:

select
  UM.email,UM.pfid as UMpfid,
  HRM.pfid, RM.pfid
from user_master UM
left join HR_master HRM on (HRM.email=UM.email)
left join Roaster_master RM on (RM.email=UM.email)
where UM.pfid != HRM.pfid

上面的查询也返回“reno”,而它不应该是因为User_master中的行之一有pfid匹配。

0 个答案:

没有答案