У меня проблемы с получением следующей суммы.У меня есть таблица предметов, которая показывает местоположение, код товара и код размера.Уникальной особенностью этой таблицы является наличие флага, который определяет, будет ли место содержать конкретный предмет.У меня есть еще одна таблица, которая показывает движение запасов товаров.Эта таблица также показывает местоположение, предмет, размер и положительную или отрицательную запись.Сумма положительных / отрицательных записей дает текущий запас товара.
То, что я не могу сделать, это сказать, СУММА количества движения запаса, где элемент и размер помечены как "местоположение может складировать этот элемент"
Первый оператор выбора возвращает элементы, которые можно хранить по местоположению
select
S.[Location Code],S.[Item No_],S.[size],
from [Stockkeeping Units] S
where [Range in Location] = 1
Результаты возвращают список в виде:
location Code| Item no | Size
1 | SHIRT1 | s
1 | SHIRT1 | m
1 | SHIRT2 | s
1 | SHIRT2 | m
2 | SHIRT1 | s
2 | SHIRT2 | m
Второй оператор выбора возвращаеттекущий запас товара по местоположению
select
L.[Location Code],L.[Item No_],L.[size],
sum(L.[Quantity]) as Quantity
from [Item Ledger Entry] L
location Code| Item no | Size | Quantity
1 | SHIRT1 | s | 5
1 | SHIRT1 | m | 3
1 | SHIRT2 | s | 5
1 | SHIRT2 | m | 7
2 | SHIRT1 | s | 3
2 | SHIRT2 | m | 0
Когда я пытаюсь объединить эти таблицы, чтобы вернуть комбинацию первых двух операторов выбора, он сбивается с пути
select L.[Location Code],L.[Item No_], L.[Variant Code],
sum(L.[Quantity]) as Quantity
from [$Item Ledger Entry] L
join [Stockkeeping Unit] on [Item Ledger Entry].[Item No] = [Stockkeeping
Unit].[Item No_]
where [Stockkeeping Unit].[Range in Location] = 1
group by L.[Location Code],L.[Item No_],L.[Variant Code]
Я хотел бы видеть следующее:
location|item no|size|quantity where range in location is yes
Объединенный запрос возвращает результат, игнорируя [Единица учета запасов]. [Диапазон в местоположении] = 1 запрос
Присоединенныйзапрос также не возвращает те же результаты SUM, что и второй запрос SELECT