Database design 创建一个简单的(但不适合我)db
我正试图建立一个数据库来跟踪craigslist的一个小型销售业务 基本上,这些家伙是怎么运作的Database design 创建一个简单的(但不适合我)db,database-design,ms-access,relational-database,Database Design,Ms Access,Relational Database,我正试图建立一个数据库来跟踪craigslist的一个小型销售业务 基本上,这些家伙是怎么运作的 有人买3本书,每本10美元 他们把它贴在CL上 他们卖20美元 购买者每卖出一本书就可以得到10美元,外加1/3的利润 问题是,他们每次几乎都买同一本书,但价格却在变化。有时,他们花12美元买这本书,另花15美元。如果市场对他们有利,他们会买其他的书 我想做的是建立一个目录表,根据书名和购买价格跟踪这些书 所以如果我们有10本“绿鸡蛋和火腿”的书,每本10美元,而我们有5本“绿鸡蛋和火腿”的书,每本
- IDPK
- 名字
- 描述
SELECT ID, ProductName,
(SELECT Sum(Quantity) FROM Purchase WHERE ProductID=Product.ID) -
(SELECT Sum(Quantity) FROM Sale WHERE ProductID=Product.ID) AS NumInStock
FROM Product
- 身份证
- 购买日期
- 产品IDPK
- 购买价格PK
- 数量
- IDPK
- 产品标识
- 产品质量
- 购买价格
感谢所有能帮助我的人。那么,在产品进入库存之前,应该先购买,对吗?只需将PurchasingID用作库存表中的外键-这将消除在两个表中使用采购价格的需要。
编辑:
它将是这样的:
产品
ID PK
名称
描述 库存
ID PK
购买日期
数量
采购标识FK 采购
ID PK
产品标识FK
产品质量
购买价格
根据您的需求,您可能需要在采购和库存之间增加一张表格产品
- IDPK
- 产品名称
- 描述
- IDPK
- ProductIDFK
- PurchDate
- 数量
- 买价
- IDPK
- ProductIDFK
- 销售日期
- 数量
- 销售价格
SELECT ID, ProductName,
(SELECT Sum(Quantity) FROM Purchase WHERE ProductID=Product.ID) -
(SELECT Sum(Quantity) FROM Sale WHERE ProductID=Product.ID) AS NumInStock
FROM Product
上面的查询所做的是从Product表返回ID和ProductName,并计算该商品的库存数量。第一个子查询(从采购中选择Sum(Quantity),其中ProductID=Product.ID)
返回已采购的所有匹配项目的总和。然后,它从该总数中减去已售出的所有匹配项目的总和(选择sum(Quantity)from Sale,其中ProductID=Product.ID)
,得出库存量
要获得以100美元购买的iPad数量,您可以使用如下查询:
SELECT Sum(Quantity) AS NumiPadsFor100
FROM Purchase WHERE PurchPrice = 100
为了获得某一特定项目的利润,在查询中执行所有操作会有点麻烦,但在代码中执行起来会很简单。1个表用于产品,1个表用于移动(销售和购买)。这样,您的库存将非常容易。如果有大量(比如说每年超过50000次移动),您可能需要查看。所以我不需要库存关系?只是一个库存视图,这就是你说的吗?没错。如果你跟踪你的购买和销售,那么区别在于你的现有库存。你能解释一下这个sql语句吗,我对这个很熟悉。问题是我需要根据每件商品的成本来盘点。我需要能够拿出我以100美元的价格购买的“iPad”,你不需要库存,因为它是从移动中衍生出来的。购买和销售也不需要单独的表格。一张桌子的移动就足够了,数量的符号会起作用:+表示输入,-表示输出。只需将按Ref分组的移动相加,您就有了库存。是的,但我不确定如何设计另一个表,以及它应该如何与DB的其余部分交互。