Вот проблема: даны 2 таблицы, набор локаций и Sku, которые являются легким инвентарем, и другая таблица (локации и sku), которые являются тяжелым инвентарем - как мне go о создании другой таблицы, которая указывает, где я следует отправить лишний инвентарь?
Таблица переносов будет / может иметь несколько записей (sku / location / amount). Скажем, одной локации недостаточно, тогда будет добавлена локация 2. Переводы должны заказывать те, у кого больше всего, и те, которые нуждаются больше всего. Таким образом, если в одной локации есть 10 дополнительных, а в другой - 5 дополнительных, сначала добавляется 10 дополнительных.
Если в локации 1 есть 10 дополнительных предметов sx1, а в локации 2 - 5 дополнительных предметов sx1. Местоположение 30 нуждается в 12 sx1 пунктах. Они должны получить 10 из местоположения 1 и 2 из местоположения 2. Может быть другое местоположение, которое также нуждается в них.
Я бился головой о стену, чтобы понять это, и я только задаю странные временные запросы, которые не работают.
Вот некоторый код для создания временных таблиц. SQL Сервер 2017
DROP TABLE IF EXISTS #tempExcessInventory;
DROP TABLE IF EXISTS #tempNeededInventory;
CREATE TABLE #tempExcessInventory
(
InventoryLocation VARCHAR(255)
,SKUName VARCHAR(255)
,ExcessInventory INT
);
CREATE TABLE #tempNeededInventory
(
InventoryLocation VARCHAR(255)
,SKUName VARCHAR(255)
,NeededInventory INT
);
Insert into #tempExcessInventory
values
('A1','SKUName1',7)
,('A2','SKUName2',1)
,('A3','SKUName3',10)
,('A4','SKUName4',4)
,('A5','SKUName5',2)
,('A6','SKUName6',10)
,('A7','SKUName7',2)
,('A8','SKUName8',8)
,('A9','SKUName9',5)
,('A10','SKUName10',9)
,('A11','SKUName11',3)
,('A12','SKUName12',3)
,('A13','SKUName13',8)
,('A14','SKUName14',3)
,('A15','SKUName15',9)
,('A16','SKUName16',10)
,('A17','SKUName17',6)
,('A18','SKUName18',4)
,('A19','SKUName19',3)
,('A20','SKUName20',10)
,('A21','SKUName21',3)
,('A22','SKUName22',7)
,('A23','SKUName23',3)
,('B1','SKUName1',2)
,('B2','SKUName2',9)
,('B3','SKUName3',5)
,('B4','SKUName4',5)
,('B5','SKUName5',10)
,('B6','SKUName6',9)
,('B7','SKUName7',9)
,('B8','SKUName8',9)
,('B9','SKUName9',3)
,('B10','SKUName10',5)
,('B11','SKUName11',4)
,('B12','SKUName12',6)
,('B13','SKUName13',1)
,('B14','SKUName14',10)
,('B15','SKUName15',1)
,('B16','SKUName16',9)
,('B17','SKUName17',3)
,('B18','SKUName18',7)
,('B19','SKUName19',9)
,('B20','SKUName20',4)
,('B21','SKUName21',8)
,('B22','SKUName22',5)
,('B23','SKUName23',1)
Insert into #tempNeededInventory
values
('A1','SKUName1',5)
,('A2','SKUName2',2)
,('A3','SKUName3',10)
,('A4','SKUName4',3)
,('A5','SKUName5',10)
,('A6','SKUName6',9)
,('A7','SKUName7',1)
,('A8','SKUName8',4)
,('A9','SKUName9',5)
,('A10','SKUName10',8)
,('A11','SKUName11',3)
,('A12','SKUName12',2)
,('A13','SKUName13',6)
,('A14','SKUName14',8)
,('A15','SKUName15',8)
,('A16','SKUName16',8)
,('A17','SKUName17',7)
,('A18','SKUName18',6)
,('A19','SKUName19',9)
,('A20','SKUName20',10)
,('A21','SKUName21',9)
,('A22','SKUName22',8)
,('A23','SKUName23',7)
,('B1','SKUName1',2)
,('B2','SKUName2',3)
,('B3','SKUName3',3)
,('B4','SKUName4',9)
,('B5','SKUName5',5)
,('B6','SKUName6',8)
,('B7','SKUName7',2)
,('B8','SKUName8',5)
,('B9','SKUName9',1)
,('B10','SKUName10',7)
,('B11','SKUName11',1)
,('B12','SKUName12',6)
,('B13','SKUName13',7)
,('B14','SKUName14',5)
,('B15','SKUName15',8)
,('B16','SKUName16',10)
,('B17','SKUName17',5)
,('B18','SKUName18',6)
,('B19','SKUName19',7)
,('B20','SKUName20',10)
,('B21','SKUName21',8)
,('B22','SKUName22',2)
,('B23','SKUName23',4)
Спасибо.