内部联接是否排除重复项? [英] Does Inner Join exclude duplicates?

查看:454
本文介绍了内部联接是否排除重复项?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的查询:

  select 
  SUM(payments.paid_amt) as paid_amt, 
  SUM(payments.copay_amt) as copay_amt,
  SUM(payments.CO_INSURANCE_AMT) as co_ins_amt,
  payor_group.PAYOR_GROUP as payor_group,
  DATEPART(MM,accession.XIFIN_LOAD_DATE) as load_month,
  DATEPART(yyyy,accession.XIFIN_LOAD_DATE) as load_year,
  accession.ACCESSION_ID


  from 
  [F_PAYOR_PAYMENTS_monthly] payments

  join D_PAYOR payor
  on payor.PAYOR_ID=payments.PAYMENT_PAYOR_ID

  join D_PAYOR_GROUP payor_group
  on payor.PAYOR_GROUP_KEY=payor_group.PAYOR_GROUP_KEY

  join F_ACCESSION_daily accession
  on accession.ACCESSION_ID=payments.ACCESSION_ID

  where accession.XIFIN_LOAD_DATE between '20120501' and '20120531'

  group by  payor_group.PAYOR_GROUP, DATEPART(MM,accession.XIFIN_LOAD_DATE),
  DATEPART(yyyy,accession.XIFIN_LOAD_DATE),accession.ACCESSION_ID

由于某些原因,SUMs多次计数相同的accession.ACCESSION_ID.

for some reason, the SUMs are counting the same accession.ACCESSION_ID multiple times.

当我执行所有这些连接时,我担心的是我可能多次SUMming都使用相同的值.

when i am doing all of these joins, my concern is that i might be SUMming the same value multiple times.

我如何确保我只对同一个accession.ACCESSION_ID进行一次计数?

how can i ensure that i am counting the same accession.ACCESSION_ID only once?

非常感谢您的帮助和指导.

thanks so much for your help and guidance.

推荐答案

付款表上可能有多行具有相同ACCESSION_ID的行,但付款人组不同.由于您也按payor_group分组,因此您将获得多倍登录号.

It's likely that you have multiple rows with the same ACCESSION_ID on your payments table with different payor groups. Since you are also grouping by payor_group, you are ending up with multipe accession ids.

但是,我们需要查看一些示例数据以确保确定.

We would need to see some sample data to be sure, however.

这篇关于内部联接是否排除重复项?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆