划分如何获得一个列的百分比,然后将其插入作为行SQL查询拆分柱为多行按百分比
Col1 item TotalAmount**
1 ABC 5558767.82
2 ABC 4747605.5
3 ABC 667377.69
4 ABC 3844204
6 CTB 100
7 CTB 500.52
我需要为这是我做的每一项新列百分比如: - 选择项目(总金额/ SELECT SUM(总金额),从表1)作为百分比 从表1 集团通过项目
Col1 item TotalAmount percentage
1 ABC 5558767.82 38
2 ABC 4747605.5 32
3 ABC 667377.69 5
4 ABC 3844204 26
6 CTB 100 17
7 CTB 500.52 83
现在,复杂的部分我必须通过将这个百分比乘以另一个表的数量来计算另一个数量,如表2 ii)通过将表1的总金额列分散到2行来更新总金额列 - 新计算PledgeAmount的第一行和第二行 - (总金额 - PledgeAmount)
*选择t1.percentage * t2.new量为[PledgeAmount] 从表1表2加入其中t1.item = t2.item *
。例如对于col1 5558767.82的数量将分成两行。 最终结果样本: -
Col1 item TotalAmount Type
1 ABC 363700.00 Pledge
1 ABC 5195067.82 Unpledge
....
我使用临时表来做计算。 我认为其中一种方法是将Pledged和Unpledged金额计算为新列并将其转换为数据透视表,但其数百列的巨大表格将无法快速执行。
还有其他有效的方法吗?
“但它的巨大表格有数百列” - 列?真? - 但是,如何避免使用临时表来存储每件商品的总金额。从那里开始应该很容易。 – JimmyB
这3列只是巨大表格的一部分。我已经在Temp表中保留了每件商品的总金额。对不起,我不是很好解释:(我计算的百分比,但部分将总量分成行,通过乘以新的百分比与tabl2和row2作为差异。 –