MySQL数据类型

MySQL数据类型,mysql,store,sqldatatypes,Mysql,Store,Sqldatatypes,我不确定如何在包含数字和字符的MySQL表中存储特定类型的数据。例如,在锦标赛中,一轮包含整数1,2,3,…30,以及QF、SF、GF,分别用于四分之一决赛、半决赛和总决赛 已经尝试了VARCHAR(2),CHAR(2),ENUM('1','2',…,'GF'),TEXT 他们似乎都没有正确地接受这些数据。存储回合数据的最佳方式或数据类型是什么?就我个人而言,我只会选择INT类型,将四分之一决赛、半决赛和大决赛分配给您所在领域中超出范围的特定值(例如-1、-2、-3或31、32、33) 通过这种

我不确定如何在包含数字和字符的MySQL表中存储特定类型的数据。例如,在锦标赛中,一轮包含整数
1,2,3,…30
,以及
QF、SF、GF
,分别用于四分之一决赛、半决赛和总决赛

已经尝试了
VARCHAR(2)
CHAR(2)
ENUM('1','2',…,'GF')
TEXT


他们似乎都没有正确地接受这些数据。存储回合数据的最佳方式或数据类型是什么?

就我个人而言,我只会选择
INT
类型,将四分之一决赛、半决赛和大决赛分配给您所在领域中超出范围的特定值(例如-1、-2、-3或31、32、33)

通过这种方式,您可以轻松地进行搜索、使用索引、对结果集排序

在表示层中转换为人类可读的值,也可以在MySql端这样做

SELECT id,
       CASE `round` 
           WHEN -1 THEN 'QF'
           WHEN -2 THEN 'SF'
           WHEN -3 THEN 'GF'
           ELSE `round`
       END round
  FROM tournament
样本输出

| ID | ROUND |
--------------
|  1 |     1 |
|  1 |     2 |
|  1 |     3 |
|  1 |    QF |
|  1 |    SF |
|  1 |    GF |

两种数据类型如何?您所说的“似乎都没有正确接受数据”是什么意思?在什么意义上?您是否有代码向我们显示实际问题?@I_Do_\u您的问题是否需要更多帮助?