Изменить поле таблицы, добавив к нему - PullRequest
1 голос
/ 01 ноября 2010

У меня есть Таблица1, где я хочу изменить предыдущую сумму, где предыдущая сумма представляет собой сумму поля чисел в Таблице 2 до указанной конкретной даты.Пример:

Table1

Date___|___previous_sum
01/01__|___20
01/02__|___50
01/03__|___100

Table2

Date___|___numbers
01/01__|___20
01/02__|___30
01/03__|___50

Итак, предыдущая_сумма в начале равна 0, но в зависимости от того, что находится в поле чисел до этой даты, я хочу добавить его соответственно к предыдущей сумме.

Ответы [ 3 ]

2 голосов
/ 01 ноября 2010
UPDATE  table1
SET     previous_sum = 
        COALESCE(
        (
        SELECT  SUM(numbers)
        FROM    table2
        WHERE   table2.date <= table1.date
        ), 0)
0 голосов
/ 01 ноября 2010

Я не совсем уверен, что вы спрашиваете, но я думаю, что вы имеете в виду что-то вроде этого?

UPDATE Table1 SET Previous_Sum = Table2.numbers
FROM Table1
INNER JOIN Table2 ON Table1.Date = Table2.Date

P.S. если вам нужна сумма, просто добавьте группу по сумме и наберите цифры

0 голосов
/ 01 ноября 2010
UPDATE Table1 
SET [previous_sum] = (SELECT SUM(numbers) WHERE Table2.Date <= Table1.Date)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...