在下面的示例中,我试图根据我拥有的每个酒吧位置的原料供应情况来计算我可以制作的饮料数量。
为了进一步澄清,如下例所示:基于下表中突出显示的数字;我知道我只能在 2018 年 6 月 30 日制作 1 杯玛格丽塔酒(如果我将用品运送到该地点,则在华盛顿或佛罗里达州)。
数据表样本
请使用以下代码输入以上相关数据:
CREATE TABLE #drinks
(
a_date DATE,
loc NVARCHAR(2),
parent NVARCHAR(20),
line_num INT,
child NVARCHAR(20),
avail_amt INT
);
INSERT INTO #drinks VALUES ('6/26/2018','CA','Long Island','1','Vodka','7');
INSERT INTO #drinks VALUES ('6/27/2018','CA','Long Island','2','Gin','5');
INSERT INTO #drinks VALUES ('6/28/2018','CA','Long Island','3','Rum','26');
INSERT INTO #drinks VALUES ('6/26/2018','DC','Long Island','1','Vodka','15');
INSERT INTO #drinks VALUES ('6/27/2018','DC','Long Island','2','Gin','18');
INSERT INTO #drinks VALUES ('6/28/2018','DC','Long Island','3','Rum','5');
INSERT INTO #drinks VALUES ('6/26/2018','FL','Long Island','1','Vodka','34');
INSERT INTO #drinks VALUES ('6/27/2018','FL','Long Island','2','Gin','14');
INSERT INTO #drinks VALUES ('6/28/2018','FL','Long Island','3','Rum','4');
INSERT INTO #drinks VALUES ('6/30/2018','DC','Margarita','1','Tequila','6');
INSERT INTO #drinks VALUES ('7/1/2018','DC','Margarita','2','Triple Sec','3');
INSERT INTO #drinks VALUES ('6/29/2018','FL','Margarita','1','Tequila','1');
INSERT INTO #drinks VALUES ('6/30/2018','FL','Margarita','2','Triple Sec','0');
INSERT INTO #drinks VALUES ('7/2/2018','CA','Cuba Libre','1','Rum','1');
INSERT INTO #drinks VALUES ('7/8/2018','CA','Cuba Libre','2','Coke','5');
INSERT INTO #drinks VALUES ('7/13/2018','CA','Cuba Libre','3','Lime','14');
INSERT INTO #drinks VALUES ('7/5/2018','DC','Cuba Libre','1','Rum','0');
INSERT INTO #drinks VALUES ('7/19/2018','DC','Cuba Libre','2','Coke','12');
INSERT INTO #drinks VALUES ('7/31/2018','DC','Cuba Libre','3','Lime','9');
INSERT INTO #drinks VALUES ('7/2/2018','FL','Cuba Libre','1','Rum','1');
INSERT INTO #drinks VALUES ('7/19/2018','FL','Cuba Libre','2','Coke','3');
INSERT INTO #drinks VALUES ('7/17/2018','FL','Cuba Libre','3','Lime','2');
INSERT INTO #drinks VALUES ('6/30/2018','DC','Long Island','3','Rum','4');
INSERT INTO #drinks VALUES ('7/7/2018','FL','Cosmopolitan','5','Triple Sec','7');
预期结果如下:
请注意,如预期结果所示,儿童是可以互换的。例如,在 2018 年 7 月 7 日,Triple Sec 抵达了饮品 cosmopolitan;然而,因为孩子也是朗姆酒,它改变了佛罗里达州玛格丽塔酒的供应。
也不是 06/30 和 06/31 对 Cuba Libre 的 DC 地区的更新。
请考虑到零件是可互换的,并且每次有新物品到货时,它现在都可以使用以前的任何物品。
最后 - 如果我可以添加另一列显示套件可用性,而不管位置如何,这将是非常棒的,仅基于孩子的可用性。对于前。如果在 DC 有一个孩子 #3 而在 FL 没有孩子,他们 FL 可以假设他们有足够的库存来根据另一个位置的库存来制作饮料!