【问题标题】:Need to work out database structure需要制定数据库结构
【发布时间】:2010-05-03 21:12:39
【问题描述】:

只需要一点启动。

我有 Mysql/PHP,并且

我有 5,000 种产品。 我有30家公司

我需要为每种产品存储这 30 家公司的一些数据,如下所示:

a) 价格

b) 库存数量

我还需要每天存储历史数据。

所以桌子...

记录将是产品是有道理的,因为有 5000 个,如果我将公司作为列,我可以存储价格,但是库存数量呢?我可以为每个公司创建两列,一列用于价格,一列用于数量。然后将表名设为当天的日期……这样每天都会有一张新表,里面有 5000 种产品?这是正确的方法吗?

关于我将如何检索数据的一些想法

在特定日期按产品分类的前 5 名最低价格(和公司)
过去 7 天的价格和库存变化(按产品)

【问题讨论】:

  • 不,这是一个大项目的开始,如果我在沿线的某个地方弄错了结构,它就会倒塌!

标签: database database-design structure


【解决方案1】:

这样的事情应该可以工作:

Company
-------
CompanyID (PK)
Name

Product
-------
ProductID (PK)
CompanyID (FK)
Name

ProductHistory
--------------
ProductHistoryID (PK)
ProductID (FK)
Date
Price
Quantity

【讨论】:

  • 我认为 ProductHistory 中也需要一个日期列
  • @fearofawhackplanet:谢谢,已添加。
  • 谢谢。价格因公司而异,但历史表中没有关系,如果我记录价格变化,我需要将公司 FK 添加到历史表中,所以我将有 150,000 个条目开始,并且仅在历史记录中插入一个条目价格变了……这是最好的方法吗?
猜你喜欢
  • 1970-01-01
  • 2016-12-16
  • 1970-01-01
  • 2014-02-14
  • 1970-01-01
  • 1970-01-01
  • 2014-09-26
  • 1970-01-01
相关资源
最近更新 更多