最好是使用多行,还是数组来结构化数据

Is it best to use multiple rows, or arrays to structure data

我正在建立一个比赛网站,需要存储多轮评委对每个参赛作品的评分。

第一轮和第二轮的评分为0分或1分,如果半数评委给出0分,则不进入下一轮。

进入第 3 轮的选手将获得 1 - 10 分。前 x 名(评委总分)将进入最后一轮。第 4 轮采用相同的方法,但显示获胜者等。

我想确保我尽可能地设置了 table 结构,以帮助对上述数据进行排序。

是否更好:

每个条目一行,条目的评委分数存储在数组中的一个列中

array(
    array ( judge_id => '1', round_1 => '', round_2 => '', round_3 => '', round_4 => '' ),
    array ( judge_id => '2', round_1 => '', round_2 => '', round_3 => '', round_4 => '' ),
    array ( judge_id => '3', round_1 => '', round_2 => '', round_3 => '', round_4 => '' ),
    array ( judge_id => '4', round_1 => '', round_2 => '', round_3 => '', round_4 => '' )
)

每个条目,每个法官一行,包含 'round_1'、'round_2'、'round_3' 和 'round_4'

的列

存储哪个最有意义,然后计算得分?

你应该为每一轮的每个条目维护行。

id| judge_id | round_id | score | created_at | updated_at

优点:

  1. 您可以有任意数量的第 4 轮或第 10 轮。您不需要更改 table 结构。
  2. 您可以将每一轮的附加信息放在行元组中。
  3. 您正在制作更规范化的数据,因此这将有助于添加更多与回合相关的功能。