我正在使用oracle(10)。根据另一个表的小计更新字段
我有两个表如下:
Table1 (uniq rows):
ID AMOUNT DATE
Table2:
ID AMOUNT1 AMOUNT2 ...AMOUNTN DATE
表2连接多对一到Table通过ID连接。
我需要的是更新Table1.DATE:来自Table2的最后一个(最早的)日期,其中Table1.AMOUNT - SUM(Table2.AMOUNT1)< = 0,当向Table2DATE字段向后读取表2时。
有没有简单的方法来做到这一点?
在此先感谢!
更新:正如我从您的答案中看到的,我错误地指出了这个问题。所以这里去一个详细的例子:
表1有:
ID: 1 AMOUNT:100 DATE:NULL
表2已(对ID:1,因此ID没有在这里列出):
AMOUNT1 DATE
50 20080131
30 20080121
25 20080111
20 20080101
因此,在这种情况下,我需要20080111
与Table1中的DATE一样为50 + 30 + 25 => 100.
你为什么不提供创建表的脚本?这使得回答你的问题变得更容易。你为什么要打电话给专栏'日期'?您无法创建名为'date'的列名称的表格。 – tuinstoel 2009-01-13 12:51:00
50 + 30 + 25> = 100 – tuinstoel 2009-01-13 13:06:47
我同意tuinstoel,你的问题非常模糊地表达和难以遵循。起初你说<= 0,那么在你的例子中<= 100.你的意思是<= (or > =)table1.amount? – 2009-01-13 13:18:58