Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 UPDATE SUM()  [new]
FOGOT-BAstA
Member

Откуда:
Сообщений: 197
Добрый день!
Зашел в тупик и прошу помощи! Записываю в таблицу таким запросом:
INSERT INTO Dannie_KK_SRX (ID_KK,x_Sr,Date_SRX) SELECT a.ID_KK,SUM(x),Date_Pokazatel FROM Dannie_KK a 
inner join KK b on a.ID_KK=b.ID_KK WHERE a.ID_KK='3' and a.Date_Pokazatel=Cast(Cast(Date_Pokazatel As VarChar(11)) As Date) GROUP BY a.ID_KK,Date_Pokazatel

в таблицу внеслось

ID_Dannie_KK_R
17 3 94.3 2017-07-25 00:00:00.000
18 3 92.9 2017-07-26 00:00:00.000
19 NULL NULL 3 94.8 2017-07-27 00:00:00.000
NULL NULL NULL NULL NULL NULL
31 июл 17, 07:13    [20686671]     Ответить | Цитировать Сообщить модератору
 Re: UPDATE SUM()  [new]
FOGOT-BAstA
Member

Откуда:
Сообщений: 197
лишнюю тему случайно создал! Как удалить?
31 июл 17, 07:16    [20686677]     Ответить | Цитировать Сообщить модератору
 Re: UPDATE SUM()  [new]
Akina
Member

Откуда: Зеленоград, Москва, Россия
Сообщений: 20487
FOGOT-BAstA
Записываю в таблицу таким запросом:
INSERT INTO Dannie_KK_SRX (ID_KK,x_Sr,Date_SRX)

FOGOT-BAstA
в таблицу внеслось

ID_Dannie_KK_R

По-моему, Вы не в той таблице смотрите... или не те поля...
31 июл 17, 08:23    [20686759]     Ответить | Цитировать Сообщить модератору
 Re: UPDATE SUM()  [new]
FOGOT-BAstA
Member

Откуда:
Сообщений: 197
Akina
По-моему, Вы не в той таблице смотрите... или не те поля...

Эта тема чуть чуть обрезанная, т.к. случайно нажал кнопку пост. Таблица правильная.
ID_Dannie_KK_R это идентификатор таблицы Dannie_KK_SRX.



Таблица Dannie_KK_SRX
ID_Dannie_KK_R	      int	        Unchecked
ID_Dannie_KK	      int	        Checked
R	                      decimal(4, 1)	Checked
ID_KK                      int	        Checked
x_Sr	                     decimal(4, 1)	Checked
Date_SRX	             datetime	Checked


Смысл: надо в таблицу Dannie_KK_SRX внести посчитанные средние значения (SUM(x) за день/кол-во записей за день) из таблицы Dannie_KK и привязать к таблице KK по ID_KK.
Не могу в апдейте правильно сгруппировать, так, чтобы он в нужные строки (по ID_KK и Date_SRX) средние значения обновил.
31 июл 17, 09:20    [20686871]     Ответить | Цитировать Сообщить модератору
 Re: UPDATE SUM()  [new]
FOGOT-BAstA
Member

Откуда:
Сообщений: 197
Не понял почему, но код, который в пятницу не работал - починился )))...мб кому пригодится...
UPDATE Dannie_KK_SRX SET x_Sr=(SELECT SUM(x) FROM Dannie_KK Where ID_KK=3 and Date_SRX=Cast(Cast(Date_Pokazatel As VarChar(11)) As Date))
31 июл 17, 11:52    [20687432]     Ответить | Цитировать Сообщить модератору
 Re: UPDATE SUM()  [new]
iap
Member

Откуда: Москва
Сообщений: 46975
FOGOT-BAstA
Не понял почему, но код, который в пятницу не работал - починился )))...мб кому пригодится...
UPDATE Dannie_KK_SRX SET x_Sr=(SELECT SUM(x) FROM Dannie_KK Where ID_KK=3 and Date_SRX=Cast(Cast(Date_Pokazatel As VarChar(11)) As Date))
Использовать сие произведение искусства никому не советую.
Во-первых, не указано ни одного алиаса - в результате непонячтно, в какой таблице находятся поля;
Во-вторых, апдейтятся ВСЕ записи таблицы Dannie_KK_SRX, хотя наверняка надо проапдейтить лишь некоторые.
Представим, что там миллиард записей. Сколько времени уйдёт на этот апдейт?
Кстати, а какой смысл в промежуточном касте к VARCHAR(11)?
31 июл 17, 12:30    [20687556]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить