Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Произведение + Group By + Order By  [new]
adimmat
Member

Откуда: Таджикистан
Сообщений: 180
Привет, друзья!
Нужна ваша помощь!
Заранее прошу прощения за такой "детский" вопрос, но он меня застал врасплох, к моему большому стыду!
Поставлена такая задача:
"Вывести данные обо всех кодах сырья с указанием общего объема сырья, поступившего на основной склад за 2002 год "!

Сделал след. образом!
SELECT 
	Storage.КодСырья,
	([Storage].[Цена] * [Storage].[Количество]) AS Volum
FROM Storage
WHERE 
	YEAR([Storage].[Датадвижения]) = '2002' AND
	[Storage].[КодСклада] = 1

GROUP BY КодСырья
ORDER BY КодСырья


Но в ответ получаю Ошибку 8120!
Помогите пожалуйста!
Спасибо!
19 ноя 14, 20:04    [16874300]     Ответить | Цитировать Сообщить модератору
 Re: Произведение + Group By + Order By  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
adimmat
Но в ответ получаю Ошибку 8120!

Сервер вам сообщает, что он не ванга, и не может угадать, какие вам надо брать значения полей Цена и Количество брать для вычислений одного значения для одного КодСырьяю
19 ноя 14, 21:20    [16874642]     Ответить | Цитировать Сообщить модератору
 Re: Произведение + Group By + Order By  [new]
o-o
Guest
да он хотел SUM написать, но впопыхах забыл
19 ноя 14, 22:02    [16874866]     Ответить | Цитировать Сообщить модератору
 Re: Произведение + Group By + Order By  [new]
adimmat
Member

Откуда: Таджикистан
Сообщений: 180
o-o,
Привет!
Извините, могли бы Вы подсказать мне, правильно ли я учел Ваше замечание?

SELECT 
	[Storage].[КодСырья], 
	SUM([Storage].[Цена] * [Storage].[Количество])

FROM dbo.Storage

WHERE 
	[Storage].[КодСклада] = 1 AND 
	YEAR([Storage].[Датадвижения]) LIKE '2002' and КодСырья = 45

GROUP BY [Storage].[КодСырья]
ORDER BY [Storage].[КодСырья]
21 ноя 14, 20:14    [16887678]     Ответить | Цитировать Сообщить модератору
 Re: Произведение + Group By + Order By  [new]
o-o
Guest
adimmat,
ну, ошибку 8120 точно не получите, в смысле да, SUM -- на месте,
а вот заменить "=" на "like", да еще и без wildcard characters -- это точно не "мое замечание"
21 ноя 14, 20:55    [16887873]     Ответить | Цитировать Сообщить модератору
 Re: Произведение + Group By + Order By  [new]
iap
Member

Откуда: Москва
Сообщений: 47145
SELECT S.[КодСырья], [SUM]=SUM(S.[Цена] * S.[Количество])
FROM dbo.Storage S
WHERE S.[КодСклада] = 1
  AND S.[Датадвижения]>='2002'
  AND S.[Датадвижения]< '2003'
GROUP BY S.[КодСырья]
ORDER BY S.[КодСырья];
22 ноя 14, 09:45    [16889046]     Ответить | Цитировать Сообщить модератору
 Re: Произведение + Group By + Order By  [new]
adimmat
Member

Откуда: Таджикистан
Сообщений: 180
o-o, Спасибо большое за помощь! А на счет LIKE, я экспериментировал и забыл исправить! Еще раз спасибо!!!
22 ноя 14, 10:19    [16889080]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить