-1

我有一个具有以下结构的数据库表

  • ID
  • 项目
  • 类别
  • 分数

'score' 单元格只能具有以下值:

  • '' (空白的)
  • -1
  • 0
  • 1

我应该使用什么字段类型来存储“分数”值,以便在我根据项目 ID 查询时能够获得总分?枚举?

4

2 回答 2

2

为什么不使用TINYINT您不需要任何转换)作为数值。

Score
=======
0
1
2
3

后续问题,为什么需要空行或空白?

于 2012-11-01T13:18:43.153 回答
0

出于可读性的原因,我宁愿使用 ENUM。稍后可能很难理解数字 3 或 0 在您的表中的确切含义,但使用 ENUM 值的正确名称,即使在一年后您也可以轻松识别它。

另外的。当 ENUM 中的元素数小于 255 时,ENUM 使用与 tinyint 相同的字节数 (1)。

于 2012-11-01T13:39:36.787 回答