Вставить сумму в другую таблицу на группы по годам SQL сервер
У меня есть..
Table_A
Table_B
INSERT INTO Table_B (Price, Modified) SELECT SUM(Price) AS Sales, YEAR(Modified) YEAR FROM Table_A GROUP BY YEAR(Modified) ORDER BY YEAR
Мне нужен как этот результат
Имя-Цена-Измененная Дата
--------------------------------
НН - 1000 - 2015
cc-5000-2016 общее количество дней и месяцев за 2016 год
но вставьте эту сумму в другую таблицу как есть.
если мне придется использовать Fetch courser также доза не имеет значения
но мне нужен этот результат
НН - 1000 - 2010
СС - 5000 - 2013
НН - 1000 - 2015
СС - 5000 - 2016
Только год без месяца и дней
спасибо..
Что я уже пробовал:
SELECT SUM(Price) AS Sales, YEAR(ModifiedDate) YEAR FROM Table_a GROUP BY YEAR(ModifiedDate) ORDER BY YEAR
Но эта сумма во время выполнения только без вставки в Table_B
Я тоже пытался
SELECT SUM(Price ) AS Sales, DATEPART(YYYY, ModifiedDate) YEAR FROM SalesDate GROUP BY YEAR(ModifiedDate) ORDER BY YEAR(ModifiedDate)
SQL Manager
показывая эту ошибку...
Msg 206, Уровень 16, Состояние 2, Строка 1
Столкновение типов операндов: int несовместимо с датой
0x01AA
Похоже, вам нужно привести год к дате и времени
Maciej Los
Непонятный... Пожалуйста, приведите пример данных (table_a).
an0ther1
Как и советовал 0x01AA - я бы предположил, что вам нужно пересмотреть структуру вашей таблицы.
DATEPART (yyyy, <datevalue>) возвращает целое число, а не дату
YEAR (<datevalue & gt;) также возвращает целое число, а не дату
Если Table_B. Modified имеет тип данных Date, вам нужно будет преобразовать целое число в дату или изменить тип данных измененного столбца на Int
с уважением