select
a.id_товара, a.Название,
nvl(sum(b.количество), 0) - nvl(sum(c.количество), 0)
from
"таблица товаров" a,
"таблица приходов товара" b,
"таблица реализации" c
where
a.id_товара = b.id_товара (+) and
a.id_товара = c.id_товара (+)
group by
a.id_товара, a.Название
помогите с запросом
id_товара
Название
таблица приходов товара
id_записи,
id_товара
количество
, и
таблица реализации
id_записи,
id_товара
количество
требуется сделать запрос, выбирающий для всех товаров
Название товара, и его количество на складе
количество товара на складе=Сумма всех приходов-Сумма всех расходов
Помогите кто в курсе?
Цитата:
Originally posted by that
есть таблица товаров,
id_товара
Название
таблица приходов товара
id_записи,
id_товара
количество
, и
таблица реализации
id_записи,
id_товара
количество
требуется сделать запрос, выбирающий для всех товаров
Название товара, и его количество на складе
есть таблица товаров,
id_товара
Название
таблица приходов товара
id_записи,
id_товара
количество
, и
таблица реализации
id_записи,
id_товара
количество
требуется сделать запрос, выбирающий для всех товаров
Название товара, и его количество на складе
Запрос для сервера Oracle:
Код:
а как быть с Access-ом, в котором нет функции nvl ?
Цитата:
Originally posted by that
а как быть с Access-ом, в котором нет функции nvl ?
а как быть с Access-ом, в котором нет функции nvl ?
Найти аналогичную, или отказаться от ее использования. NVL нужна, чтобы избавиться от возможного NULL, если для какого-то товара нет ни одной записи в таблице прихода или расхода.
Цитата:
Originally posted by that
а как быть с Access-ом, в котором нет функции nvl ?
а как быть с Access-ом, в котором нет функции nvl ?
Попробуй в запросе в SQL-режиме вставить примерно следующее:
SELECT DISTINCTROW Товар.Name_Товар, Sum(IIf(Товар_Приход.[Кол-во_Приход] Is Not Null,[Кол-во_Приход],0)) AS [Sum-Приход], Sum(IIf(Товар_Расход.[Кол-во_Расход] Is Not Null,[Кол-во_Расход],0)) AS [Sum-Расход], [Sum-Приход]-[Sum-Расход] AS [На складе]
FROM (Товар LEFT JOIN Товар_Приход ON Товар.id_Товар = Товар_Приход.id_Товар) LEFT JOIN Товар_Расход ON Товар.id_Товар = Товар_Расход.id_Товар
GROUP BY Товар.Name_Товар;
С именами, я думаю разберешься.
А как быть в аналогичном случае с Interbase?