Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Затрудняюсь построить запрос [D7, 2000]


Страницы:   1 2 3

RebroFF ©   (2006-12-11 13:39:00) 

Добрый день.Есть dbf-таблица движения материалов. Поля sklad(цех), nom (номенклатурный номер),sum (сумма прихода или расхода), vid (определяет, чем явл. сумма:приходом или расходом. 40-расход, остальные значения-приход). Задача: выбрать только те записи, сгруппировав по номенклатурному номеру и по цехам, для которых остаток (приход-расход) >1000.
Запрос "sql40" (выбираем с видом 40):

SELECT nomer,sklad,
SUM(mtb60."sum") Summ
FROM mtb60
WHERE vid = "40"
GROUP BY nomer,sklad

Запрос "sqlnot40" (с видом не равным 40, т. е. приход):

SELECT nomer,sklad,
SUM(mtb60."sum") Summ, sum(kol) skol
FROM mtb60
WHERE vid<>"40"
GROUP BY nomer,sklad

Общий запрос:

SELECT
a.nomer, b.nomer,a.sklad,b.sklad,a.Summ SummA, b.Summ SummB, a.Summ - b.Summ SummAB,
FROM
"sumNot40.sql" a
JOIN "sum40.sql" b ON (a.nomer = b.nomer and a.sklad=b.sklad and a.sklad=:nomskl)
WHERE
a.Summ - b.Summ > 1000

Проблема в том, что, если по определённому номенк. номеру расхода не было, значит и нет соотв. записи для такого номера с видом "40", а значит a.Summ - b.Summ не имеет смысла. Но этом случае нужно считать расход равным 0 и в остаток попадает весь приход. Помогите реализовать. Заранее премного благодарен.


RebroFF   (2006-12-11 13:57:00) [41]

Тоже выход, но хотелось бы через запрос... Это реально?


Сергей М.   (2006-12-11 13:54:00) [42]

А почему бы не сделать все необходимые расчеты прямо в своем клиентском приложении ?


RebroFF   (2006-12-11 13:46:00) [43]


> Субд какая ?

Вообще-то это АРМ, написанный не мной. Запрос нужен просто для печати отчёта определённого вида. Подключаюсь к фокспрошной базе через BDE.


Сергей М.   (2006-12-11 13:42:00) [44]

Субд какая ?


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо