我有很好的代码,除了它将多个日期的存款金额总和而不是相应的日期和帐户。例如:总结重复SQL Server 2014
帐号:123 /日期:01/01/2012 /存款准备:$ 100 /保证金:$ 100
帐号:123 /日期:2012年1月20日/存款准备:$ 100 /存款:$ 100
查询结果:
帐号:123 /日期:01/01/2012 /存款准备:$ 100 /保证金:$ 200
帐号:123 /日期:01/20/2012 /存款要求:$ 100 /存款:$ 200
这是同样的人帐户,但有两个不同的日期。存款金额只应与帐户#&日期对应的金额相加。谢谢你的帮助!
SELECT ca.fdorgunit AS Facility
, pt.fdmedrecnum AS Account
, ca.fddos AS DOS
, Cast(iv.fdinnetdeposit/100.0 as decimal(10,2)) AS [Deposit Required]
, Sum(Case When pa.fddescription = 'Deposit' Then Cast(pa.fdpayadjamount/100.0 as decimal(10,2)) Else 0 END) AS Deposit
FROM OPENQUERY (VISION, 'SELECT * FROM de.tbinsverification') AS iv
LEFT JOIN OPENQUERY (VISION, 'SELECT * FROM ci.tbcase') AS ca
ON iv.fdcase = ca.id
JOIN OPENQUERY (VISION, 'SELECT * FROM de.tbpatient') AS pt
ON pt.id = ca.fdpatient
LEFT JOIN OPENQUERY (VISION, 'SELECT * FROM ar.tbpayadjmaster') AS pa
ON pa.fdpatient = pt.id
WHERE iv.fdinnetdeposit is not Null AND iv.fdinnetdeposit <> '0' AND ca.fdcasestatus = 'Performed'
GROUP BY ca.fdorgunit, ca.fddos, iv.fdinnetdeposit, pt.fdmedrecnum
下面是怎样看的表,但目前的查询返回的$ 200这两个16年10月10日& 16年10月20日日期的存款:如果您
Facility | Account | DOS | Deposit Required | Deposit
1 | 1234 | 10/10/16 | $100 | $100
1 | 1234 | 10/20/16 | $100 | $100
什么是'ca.fdoirunit''ca.fddos''iv.fdinnetdeposit'和'pt.fdmedrecnum'?因为你按这些字段进行分组,不仅是账号和日期。 – McNets