Форум: "Начинающим";
Текущий архив: 2008.11.16;
Скачать: [xml.tar.bz2];
ВнизВопрос по обновлению данных Найти похожие ветки
← →
AlekseyB (2008-10-08 06:51) [0]Есть табличка, которую необходимо обновить. Т.е. смысл такой, есть несколько записей, с одним одинаковым полем, т.е.
Агабаков 12 45 0 0 5 7 Ахмат
Буров 8 5 10 20 5 0 Ахмат
Необходимо просуммировать поля, т.е. должно получиться вот так ?
Агабаков 20 50 10 20 10 7 Ахмат
Буров 20 50 10 20 10 7 Ахмат
Подскажите, мастера, как такое реализовать ???
← →
Василий Жогарев © (2008-10-08 07:45) [1]
DECLARE
@Column1 int, @Column2 int, @Column3 int, @Column4 int, @Column5 int, @Column6 int
SELECT @Column1 = SUM(Column1), @Column2 = SUM(Column2), @Column3 = SUM(Column3), @Column4 = SUM(Column4), @Column5 = SUM(Column5), @Column6 = SUM(Column6)
FROM Table_3
UPDATE Table_3
SET Column1 = @Column1, Column2 = @Column2, Column3 = @Column3, Column4 = @Column4, Column5 = @Column5, Column6 = @Column6
_________________________________________________________________
WinXP, MS SQL 2005
← →
AlekseyB (2008-10-08 08:45) [2]
> Василий Жогарев © (08.10.08 07:45) [1]
Ну вроде разобрался, а если там есть еще записи, например
Агабаков 12 45 0 0 5 7 Ахмат
Буров 8 5 10 20 5 0 Ахмат
Иванов 10 0 10 20 10 0 Каспер
Сидоров 0 5 15 0 5 10 Каспер
Нужно получить :
Агабаков 20 50 10 20 10 7 Ахмат
Буров 20 50 10 20 10 7 Ахмат
Иванов 10 5 25 20 15 10 Каспер
Сидоров 10 5 25 20 15 10 Каспер
← →
Василий Жогарев © (2008-10-08 08:48) [3]
> AlekseyB (08.10.08 08:45) [2]WHERE
← →
AlekseyB (2008-10-08 09:17) [4]
> WHERE
Делаю вот так, ошибки не выдает, но все данные обнуляет, т.е. присваивает значение null. В чем загвоздка ?
DECLARE
@_1 float, @_2 float, @_3 float, @_4 float, @_5 float, @_6 float,
@_7 float, @_8 float, @_9 float, @_10 float, @_11 float, @_12 float, @_Itog float, @_New_Kr varchar(8)
SELECT @_1 = SUM(_1), @_2 = SUM(_2), @_3 = SUM(_3), @_4 = SUM(_4), @_5 = SUM(_5), @_6 = SUM(_6),
@_7 = SUM(_7), @_8 = SUM(_8), @_9 = SUM(_9), @_10 = SUM(_10), @_11 = SUM(_11), @_12 = SUM(_12), @_Itog = SUM(_Itog)
FROM L_pr..KontaktMove where @_New_Kr = _New_Kr
UPDATE L_pr..KontaktMove
SET _1 = @_1,_2 = @_2,_3 = @_3,_4 = @_4,_5 = @_5,_6 = @_6,_7 = @_7,_8 = @_8,_9 = @_9,_10 = @_10,_11 = @_11,_12 = @_12,_Itog = @_Itog
← →
Василий Жогарев © (2008-10-08 09:21) [5]
DECLARE
@_1 float, @_2 float, @_3 float, @_4 float, @_5 float, @_6 float,
@_7 float, @_8 float, @_9 float, @_10 float, @_11 float, @_12 float, @_Itog float, @_New_Kr varchar(8)
SELECT @_1 = SUM(_1), @_2 = SUM(_2), @_3 = SUM(_3), @_4 = SUM(_4), @_5 = SUM(_5), @_6 = SUM(_6),
@_7 = SUM(_7), @_8 = SUM(_8), @_9 = SUM(_9), @_10 = SUM(_10), @_11 = SUM(_11), @_12 = SUM(_12), @_Itog = SUM(_Itog)
FROM L_pr..KontaktMove where @_New_Kr = _New_Kr
UPDATE L_pr..KontaktMove
SET _1 = @_1,_2 = @_2,_3 = @_3,_4 = @_4,_5 = @_5,_6 = @_6,_7 = @_7,_8 = @_8,_9 = @_9,_10 = @_10,_11 = @_11,_12 = @_12,_Itog = @_Itog
where @_New_Kr = _New_Kr
А вообще, значит запросSELECT @_1 = SUM(_1), @_2 = SUM(_2), @_3 = SUM(_3), @_4 = SUM(_4), @_5 = SUM(_5), @_6 = SUM(_6),
@_7 = SUM(_7), @_8 = SUM(_8), @_9 = SUM(_9), @_10 = SUM(_10), @_11 = SUM(_11), @_12 = SUM(_12), @_Itog = SUM(_Itog)
FROM L_pr..KontaktMove where @_New_Kr = _New_Kr
при условииwhere @_New_Kr = _New_Kr
не возвращает набора данных...
← →
AlekseyB (2008-10-08 09:30) [6]
> не возвращает набора данных...
да, действительно не возвращает, а какое тогда условие то можно поставить ? Мне ведь как раз по этому полю и надо отбор делать, т.е. суммировать
← →
Василий Жогарев © (2008-10-08 09:37) [7]
> AlekseyB (08.10.08 09:30) [6]
>
> > не возвращает набора данных...
>
>
> да, действительно не возвращает, а какое тогда условие то
> можно поставить ? Мне ведь как раз по этому полю и надо
> отбор делать, т.е. суммировать
Ставь корректное условие...
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.11.16;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.005 c