我在PLSQL中有一个填充临时表的过程。数据如下所示:
BUYER_NAME QUANTITY AMOUNT
-------------------------------
JOHN 10 1200
JOHN 12 1310
ALAN 15 1450
ALAN 10 1200
JOHN 20 2400
我需要总结每位买家的数量和金额,然后删除现有数据并再次填写表格,以便每个买家名称只出现一次总数量和金额。
我知道如果我创建另一个临时表并通过它传输数据,就可以完成此操作。但是,是否可以合并同一临时表中的记录(并在同一会话中)?
答案 0 :(得分:0)
听起来这里的问题是填充表的initil pl / sql过程。为什么不修改它来做这个呢?我怀疑答案是它会大量使用pl / sql - 如果是这样,请尽一切努力将其转换为SQL,或者将其转换为可以从中选择并汇总输出的流水线函数。 / p>
除此之外,我只是将结果汇总到另一个表中。我假设这些是全局临时表,因此实际上没有太多开销,因为直接路径插入到GTT比修改已经存在的表更有效。