如何使用SUM函数更新表?

时间:2016-05-11 08:20:02

标签: sqlite

我有一个这样的表,我们称之为table1

╔════╦══════════════╦══════╗
║ A  ║  B           ║ Total║
╠════╬══════════════╬══════╣
║ 12 ║   -1         ║ 1016 ║
║ 12 ║   250        ║  234 ║
║  2 ║   -1         ║  342 ║
║ 20 ║   250        ║  959 ║
║  4 ║   -1         ║  232 ║
║  4 ║   250        ║  223 ║
║  5 ║   -1         ║  123 ║
║  6 ║   250        ║    9 ║
║  6 ║   251        ║    8 ║
║  7 ║    -1        ║    1 ║
║  7 ║   250        ║    12║
╚════╩══════════════╩══════╝

我有另一张桌子,我们称之为table2。

╔════╦══════════════╦══════╗
║ SL ║  A1          ║ Total║
╠════╬══════════════╬══════╣
║  1 ║  I           ║      ║
║  2 ║  J           ║      ║
║  3 ║  K           ║      ║
╚════╩══════════════╩══════╝

在table1中出现带有其他数字的-1的情况下,必须在table2中添加“I”,除了-1和2之外。

因此必须将-1和2添加到table2和

中的'K'

250和251出现的地方,必须将总数添加到表2中的“J”

1 个答案:

答案 0 :(得分:0)

第一笔总和可按如下方式计算:

UPDATE table2
SET Total = (SELECT SUM(Total)
             FROM table1
             WHERE B = -1
               AND A != 2)
WHERE A1 = 'I';

其他两个留作练习......