我正在为体育场馆门票数据库建模。我有TICKET
,FAN
,CARD
,EVENT
,SEAT
和SECTOR
个实体(以及其他实体)。有4万个座位和45个部门。价格大致或多或少地计算:
EVENT
有一个基本价格SECTOR
FAN
年龄,他可能有一个不可告人的折扣FAN
有一个CARD
,具体取决于他可以享受折扣的卡类型 TICKET
与除CARD
和SECTOR
之外的所有内容都以1:1关联(但SEAT
对SECTOR
较弱,因此他可以看到其关键字)
我应该计算数据库中的价格吗?只有我需要存储它?如果是,我应该怎么做,将其保留为TICKET
中的计算字段?
我希望我已经足够清楚了,谢谢你的每一个回答 编辑:我不希望sql代码计算它
答案 0 :(得分:0)
我认为在数据库中实现该算法是个好主意,例如使用每个应用程序或Web服务中的相同算法和代码,或者某天您打算构建的任何内容。
我会创建一个存储过程来计算价格。只要您想要计算价格,就可以调用此程序。
一旦发出机票,其价格就是固定的,因此您通常会将票价存储起来。之后你可能会改变折扣,所以同样的机票会变得更便宜,但已售出的机票当然不会。也就是说,使用存储过程最初计算票价。发行票证时,用它存储当前价格。