Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 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
15-1221728009
Vlad Oshin
2008-09-18 12:53
2008.11.16
редактор IDE, фишка..


2-1223363342
Alex_C
2008-10-07 11:09
2008.11.16
Последовательность GroupBox с Align = alTop


15-1221640505
Slider007
2008-09-17 12:35
2008.11.16
С днем рождения ! 17 сентября 2008 среда


6-1195471990
Steep
2007-11-19 14:33
2008.11.16
количество переданной информации


11-1193383490
L`Autour
2007-10-26 11:24
2008.11.16
Программный скролинг KOLListView





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский