【发布时间】:2012-07-23 15:24:46
【问题描述】:
我正在设计一个数据库来存储高尔夫得分和有关每个洞或每个回合的其他统计数据,但我很难知道哪种方法最有效。我的问题围绕着为课程和回合构建表格。这里有两个选项,虽然我不确定是否有更好的第三个选项。我正在使用 mySQL 5.1.63 和 PHP 5.2.17。为便于阅读,采用 CAPS 格式的表格。
- 有一个存储所有课程信息的大表,因为这些信息只会在数据库中列出一次(~100 列...18 个洞 * 每个洞有 4 个属性,除了 course_name、位置、电话、 ETC。)
- 课程:course_id、par_1、par_2、...par_18、distance_1、distance_2、...distance_18 等
- 将课程信息拆分为表格,在适当的时候将某些表格与 course_id 连接起来
- COURSE_PAR:course_id、par_1、par_2、...par_18
- COURSE_DISTANCE: course_id, distance_1, distance_2, ...distance_18
- COURSE_INFO:课程 ID、课程名称、地址、电话...
- 等
类似的问题可能会被问到有关记录回合的问题。我有round_1、round_2、...、hit_fairway_1、hit_fairway_2、num_putts_1、num_putts_2,还是我将这些属性中的每一个都分解到自己的表中? This 问题及其答案倾向于将其分解为表格。这是否意味着这样的结构:
- SCORE:hole_num, course_id, round_id, score, hit_fairway, num_putts, ...
经常性查询(使用 PHP)将主要针对该人的击球是否高于或低于标准杆、击中球道、推杆次数等。
希望我的问题足够清楚。我知道那里有一些半相似的问题,就像上面提到的那样,但我无法将这些答案完全转移到我正在寻找的东西上。
谢谢!
【问题讨论】: