2016-12-15 70 views
0

需要此问题的帮助。我有一个Develop,我需要在SQL中查找重复值,然后需要将INVOICE_AMOUNT和Divide for individualy amount范例进行求和。在Excel中使用重复值更新

FA-0001 $25.00 BILL-0001 
FA-0001 $75.00 BILL-0002. 

我需要SUM TOTAL这张发票。 SUM(AMOUNT_INVOICE)= $ 100.00,用这个结果除以个别金额。例子100.00/25 = 0.25等等,这个百分比乘以DET_SOL_AMOUNT。

我需要应用此查询重复的值。

我试着用这个查询。

UPDATE [T4DET] SET [DET_SOL]=(([LOC_AMOUNT]/SUM([LOC_AMOUNT]))*[DET_SOL_CALC]) FROM [1WEB] WHERE [1WEB].[INVOICE] IN (SELECT [T4DET].[ASSIGNMENT] FROM [T4DET] GROUP BY [T4DET].[ASSIGNMENT] HAVING COUNT(*) > 1) 

感谢您的帮助。

回答

0

如果我明白你想要正确做什么,Excel很容易。你需要编写公式中只有2列,例如:

Group Amount Bill No DET_SOL_CALC Sum of Group Result 
FA-0001 $25.00 BILL-0001 2 100 0.5 
FA-0001 $75.00 BILL-0002 2 100 1.5 
FA-0002 $200.00  BILL-0001 5 600 1.666666667 
FA-0002 $100.00  BILL-0002 5 600 0.833333333 
FA-0002 $300.00  BILL-0003 5 600 2.5 

把你的数据在列A,B和C ColumnD:DET_SOL_CALC E列公式应该是:= SUMIF($ A $ 2:$ C $ 6 A2,$ B $ 2:$ B $ 6) F栏式应该是:= B2/E2 * D2

行1是你的数据的报头中 把这些公式行,并将它们向下拖动到最后你的数据行,你的数字应该正确计算。

如果这是您的答案,请点击复选标记!

0

在ALTER溶液,创建具有SUM和GROUP BY一个态表和用于计算

agregate三列实施例

DET4TEMP ASSINGMENT NVARCHAR DOC_AMOUNT MONEY

INSERT INTO 4DETTEMP (ASSINGNMENT,[TOTAL]) ASSIGNMENT, SUM(DOC_AMOUNT) FROM FBL5N GROUP BY ASSIGNMENT 

和查询后是+

在另一个表中获取DET SOL金额。

UPDATE 4BET SET DET_SOL_CAL=T2.INCOMING_AMOUNT FROM FBL5N T2 WHERE ASSIGNMENT=T2.INV_CON 

获取时间表的DOC AMOUNT TOTAL。

UPDATE 4BET SET DOC_AMNT_TOTAL=T2.[TOTAL] FROM 4DETTEMP T2 WHERE ASSIGNMENT=T2.ASSIGNMENT 

获取计算百分比。

UPDATE 4BET PERC_CAL_AMNT=(DOC_AMNT_TOTAL/DOC_AMNT), DET_SOL=(PERC_CAL_AMNT*DET_SOL_CALC) 

删除临时表并完成后。

这是我的解决方案。问题是可行的?