【发布时间】:2019-09-29 09:24:26
【问题描述】:
我正在通过汇总金额并将它们插入汇总表中来从一个非常大的表(超过 1 亿行)中迁移财务数据。当汇总金额(30 亿)大于汇总表中的字段可以容纳的数量(最多只能容纳 9.99 亿)时,我遇到了问题。更改字段大小不是一种选择,因为它需要更改过程。
我唯一的选择是将金额(超出大小限制的金额)分成较小的金额,以便将其插入表格中。
我遇到了这个SQL - I need to divide a total value into multiple rows in another table,除了我需要插入的行数是动态的之外,它很相似。
为简单起见,这就是源表的样子
account_table
acct_num | amt
-------------------------------
101 125.00
101 550.00
101 650.00
101 375.00
101 475.00
102 15.00
103 325.00
103 875.00
104 200.00
104 275.00
摘要记录如下
select acct_num, sum(amt)
from account_table
group by acct_num
帐户摘要
acct_num | amt
-------------------------------
101 2175.00
102 15.00
103 1200.00
104 475.00
假设目标表中的最大值为 1000.00,则预期输出为
summary_table
acct_num | amt
-------------------------------
101 1000.00
101 1000.00
101 175.00
102 15.00
103 1000.00
103 200.00
104 475.00
如何创建查询以获得预期结果?提前致谢。
【问题讨论】:
-
select acct_num, sum(amt) /10000。以后别忘了乘以 10000 来取回钱 -
感谢您的回复,但我不明白上面的查询将如何根据源数据返回预期结果。