我有一个客户,他在网上订购了3件商品。然后我有一个每个项目的商店列表,按最便宜的送货率排序。例如,我有5家商店。然后是5^3 = 125个商店的组合。
所以
Item 1 - store 1, store 9, store 4, store 3, store 2
Item 2 - store 9, store 10, store 1, store 2, store 5
Item 3 - store 5, store 1, store 4, store 8, store 7
因此,商店1、9、5分别对商品1、2和3具有最低的递送率。但是您可以看到,我可以从商店9和商店2发送商品1和2,并且可以从
以下是场景:
我有一个简单的“库存”表。该表有三列:一个引用产品的外键、一个引用商店的外键和一个价格的数值。此表不指定可用产品的数量,它只是用来通知用户商店销售特定的产品。
这个Inventory表是公开可见的(这就是应用程序的重点:用户应该能够在各种可能不相关的商店中搜索不同的产品)。商店需要能够更新自己的库存,而不影响其他商店的库存。
现在,每个商店都有自己的用户帐户和视图。视图本质上设置如下:
CREATE VIEW MY_INVENTORY AS SELECT I.ProductID, I.StoreID, I.Price FROM Inventory I WHERE I.StoreI
我的问题是检索一个商店,他们以高于平均市场价格的价格出售每件商品;
SELECT SHOP_NAME, Trade_Name
FROM SELL_ITEM f
WHERE PRICE >
(SELECT
AVG(PRICE)
FROM SELL_ITEM s
WHERE f.Trade_Name = s.Trade_Name
GROUP BY TRADE_NAME);
这个查询返回了所有商店销售的商品>平均市场价格,但我如何筛选出那些不是每种商品的商品?
我目前正试图重新设计一个Point of Sale数据库,使其更加规范化,这将极大地帮助管理数据等等。基于我必须处理的数据,我有点不确定最佳设计实践。首先,基本上有两套措施,它们共享共同的密钥。有库存数据,单位和美元,然后是销售点数据,单位和美元。其中每一个都是客户、商店、商品和日期级别。
我所做的(在这一点上主要是理论上)是为
Item level information
Item_ID,
Customer_ID
itemnumber
(and a few other item specific information).
Stores
Store_ID,