запрос на суммирование значений

SQL во всех проявлениях - от ANSI-92 до TSQL.

Модераторы: Yurich, Absurd

Ответить
solokaa
Сообщения: 1
Зарегистрирован: 16 мар 2013, 23:52

16 мар 2013, 23:59

Имеется 2 таблицы: Остатки с полями (Ткань(РК), Метраж) и Перемещение с полями (ID(PK), Ткань, метраж, Тип_перемещения). Поле Перемещение.Тип_перемещения может принимать 2 значения - "Расход" или "Приход". Пытаюсь при помощи запроса вывести текущий остаток по каждому виду ткани, т.е. от поля Остатки.Метраж отнимаю сумму значений Перемещение.Метраж где Перемещение.Тип_перемещения = "Расход" и прибавляю сумму значений Перемещение.Метраж где Перемещение.Тип_перемещения = "Приход" для каждого вида ткани. Проблема заключается в том, что суммирование проходит по всем видам ткани, а не по каждому отдельно. Помогите решить эту проблему.
Текст запроса:

SELECT DISTINCT Остаток.Ткань, Остаток.метраж
+
(SELECT SUM (Перемещение.Метраж)
FROM Остаток INNER JOIN Перемещение ON Остаток.Ткань = Перемещение.Ткань
WHERE Перемещение.Тип_Перемещения = 'Приход')
-
(SELECT SUM (Перемещение.Метраж)
FROM Остаток INNER JOIN Перемещение ON Остаток.Ткань = Перемещение.Ткань
WHERE Перемещение.Тип_Перемещения = 'Расход')

FROM Остаток INNER JOIN Перемещение ON Остаток.Ткань=Перемещение.Ткань;
Хыиуду
Сообщения: 2388
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

18 мар 2013, 12:49

group by Остаток.Ткань
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Ответить