在mysql中我有一个包含相同值(EN)的列(LANG),此时行数超过100,000行
列中可以采用相同的值 IT,FR,DE,ES,EN 是否有任何优化表的解决方案? 感谢
答案 0 :(得分:0)
如果您的列包含某个已知值(来自列表),则应使用ENUM
列类型(例如,而不是string/varchar
列):
CREATE TABLE `t1` (
`ID` INT NOT NULL AUTO_INCREMENT ,
`LANG` ENUM('EN','IT','FR','DE','ES','EN') NOT NULL ,
PRIMARY KEY (`ID`)
) ENGINE = InnoDB;
1或2个字节,具体取决于枚举值的数量(最多65,535个值)