火车时刻查询数据表设计问题???
我是在http://www.kuaidian.com.cn/上看的
没想通它的表结构是怎样设计的
我是这样想的:
1、按城市设计一个表,包括所有经过该城市的车次
2、按车次设计一个表,也就是该车次经过的城市
这样当输入两个城市时,把有相同的车次列出来
但票价、时刻该存在哪
问题点数:20、回复次数:13Top
1 楼zqllyh(学习Stupid As Pig中...)回复于 2002-03-31 16:02:31 得分 0
车次一个表
按车次经过的城市一个表 车次,城市,顺序,到站时刻,上一站到本站票价。
反方向的车次与正方向的车次关系表(如果票价时刻都一致的话。)
按理这些就可以了。
Top
2 楼laurel(laurel)回复于 2002-03-31 19:19:28 得分 5
1、城市信息表
城市代码、城市名
2、车次信息表
车次、城市代码、行程、到达时刻、发车时刻、票价
主键(车次、城市代码)
查询条件:城市1、城市2
查询城市信息表,得出城市代码
根据代码,在车次信息表中查询
select 车次信息表.车次 ,行程,到达时刻,发车时刻,票价
from
车次信息表,
(Select 车次 from 车次信息表 where 城市= 城市代码1)A,
(Select 车次 from 车次信息表 where 城市= 城市代码2) B
where
车次信息表.车次 = A.车次
and 车次信息表.车次 = B.车次
and A.车次 = B.车次
注意:上行、下行列车的车次编号不同。Top
3 楼lanying(蓝鹰)(问个不休)回复于 2002-03-31 19:53:06 得分 0
城市表,车次表,城市-车次对应表
Top
4 楼weidegong(weidegong)回复于 2002-03-31 21:50:30 得分 5
车次(车次,起点,终点,描述)
城市(代码,名称)
车次-城市表(车次,城市代码,从始发站到该城市票价,到站时间,发车时间) 注:始发站和终点站也包含在里面。
有点怀疑,始发站->A(100元),始发站->B(200元)=>A->B,100元?Top
5 楼zhkili()回复于 2002-04-01 09:18:18 得分 0
to: laurel(laurel)
基本上同意你得看法,我认为票价再设计一个表,那样比较好.如果把票价设计到车次信息表中 那你的票价是什么意思? 也就是 weidegong(weidegong) 提出的 有点怀疑,始发站->A(100元),始发站->B(200元)=>A->B,100元? 因为是任意两站Top
6 楼luoluo_lm(沧泫)回复于 2002-04-01 09:25:47 得分 0
我赞同 zqllyh(找感觉) 的做法。Top
7 楼mmzxg(超级笨蛋)回复于 2002-04-01 09:57:54 得分 0
票价应该分开表这样可以保留以往的票价Top
8 楼zqllyh(学习Stupid As Pig中...)回复于 2002-04-01 10:43:43 得分 0
想想,票价的确要另外加表:
起始城市,终点城市,车次。票价
并且还要加票价调整表:
起始城市,终点城市,车次。票价1,票价2
Top
9 楼laurel(laurel)回复于 2002-04-01 13:52:39 得分 5
始发站->A(100元),始发站->B(200元)=>A->B,100元
如果是相同的车次,是可以这样计算的。
票价计算其实没这么简单:
首先要考虑车次信息,因为 车次+行程 决定票价,快速、特快、直达、空调等信息要考虑到,计算票价:行程价+空调+特快+快速+直达+浮动率+...计算公式比较烦杂。车次信息表维护的包括这些条件,这样,票价可以提前生成好。
所以,车次信息表里保存的是计算好的票价+浮动率,票价生成信息表要另外设计。
你要设计什么系统啊?不就是查询吗?保存票价干什么?!
据我回忆,铁路客票系统(V1.0,V2.0)似乎是这样设计的:
根据车次+固定编组,生成票库,售票的时候,根据车次、到、发站等条件计算出票价,票价记录到售票记录库(存根库)里。
业务忘了,如果有哪位大仙还在搞铁路客票系统,我是贻笑大方了^_^
Top
10 楼chenybin(小马)回复于 2002-04-05 09:10:05 得分 0
http://www.kuaidian.com.cn/Top
11 楼zitjubiz(pattern)回复于 2002-04-05 10:22:54 得分 0
车次经过的城市有可能变更啊,比如说原来停30个站,现在停10 个站
或者相反啊
Top
12 楼laurel(laurel)回复于 2002-04-05 12:01:33 得分 0
那就要维护 车次信息表 了。
Top
13 楼zhanwei(@_@,初学.Net)回复于 2002-04-12 15:10:44 得分 5
up!Top




