Join 内部联接返回重复记录

Join 内部联接返回重复记录,join,snowflake-cloud-data-platform,Join,Snowflake Cloud Data Platform,我想做一些简单的事情,但我不知道怎么做 我的桌子: 报告期 实体 标签 用户数 报告期\u M-1 报告周期Q-1 ... 2017-06-30 实体1 X 471 2017-05-31 2017-03-31 ... 2020-12-31 实体2 A. 135 2020-11-30 2020-09-30 ... 2020-11-30 实体3 X 402 2020-10-31 2020-08-31 ... join子句应该包括实体列和标记(我怀疑) 我不明白self-join中的关系。你的例子。。

我想做一些简单的事情,但我不知道怎么做

我的桌子:

报告期 实体 标签 用户数 报告期\u M-1 报告周期Q-1 ... 2017-06-30 实体1 X 471 2017-05-31 2017-03-31 ... 2020-12-31 实体2 A. 135 2020-11-30 2020-09-30 ... 2020-11-30 实体3 X 402 2020-10-31 2020-08-31 ...
join子句应该包括实体列和标记(我怀疑)


我不明白self-join中的关系。你的例子。。你桌上的“450”是从哪里来的。我在你的样本数据中没有看到。这里缺少数学还是缺少示例记录?构成表唯一键的列有哪些?您是否使用构成uinique行的所有列?我不使用构成唯一键的列,我从用户计数中找到了用户,其中report\u period=report\u period\u M-1。它起作用了!谢谢:)
SELECT    M."Entity",
          M."Tag",
          M."Report_Period",
          M."Users Count",
          M."Report_Period_M-1",
          M1."Users Count" AS "Users Count M1",  
FROM      "DB"."SCHEMA"."PERIOD" M, 
         "DB"."SCHEMA"."PERIOD" M1 
WHERE    M."Report_Period_M-1"= M1."Report_Period"
AND      M."Entity" = M1."Entity"
AND      M."Tag" = M1."Tag"