首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Generalization+prices历史

Generalization+prices历史
EN

Stack Overflow用户
提问于 2013-03-04 16:26:34
回答 1查看 120关注 0票数 1

假设我有一个由三个主要项目组成的产品。产品是膝上型电脑,项目是:螺丝(id,代码,描述)按钮(id,代码,描述)覆盖(id,代码,描述,颜色)。

每台膝上型电脑都由这些项目的任意组合组成。

  1. 我可以将所有内容放在一个表"Materials“中,并添加一个名为"type”的属性来区分每个项,但是会有很多行的值为空的“颜色”。 我想到专业化:材料(id,代码,描述),然后所有的都是它的子类。但是按钮和螺丝钉类和母类没有什么不同。 那你有什么想法?
  2. 我想添加单价属性。我需要实际的价格,我想保持一个较旧的价格的历史每月(即每一个价格是一定的MM/YYYY)。 我可以创建一个价格表: 价格(id,价格,日期) 但是,我应该将actual=current价格保留在材料表中还是简单地保留在价格表中?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-04 20:51:48

代码语言:javascript
复制
/* keep your general product specs here: */
PRODUCT
id primary key
type
code
description
standard_price


/* or add a subtype table for some of them: */
COVERAGE_PRODUCT
id pk fk PRODUCT
colour 


/* products are composed of other products: */
PRODUCT_STRUCTURE
part_of not null references product(id),
composed_of not null references product(id)
primary key (part_of, composed_of)

您可以将历史定价保留在数据仓库中,或者添加一个product_price表。在这种情况下,从产品中删除"standard_price“。

代码语言:javascript
复制
PRODUCT_PRICE
product_id fk product(id)
from_date
price
to_date (nullable)
primary key (product_id, from_date)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15206203

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档