我试图从一个充满成千上万行的特定表中产生更多的性能。 有几个VARCHAR字段,我将转换为CHAR 。
我知道,如果在我的表中存在任何可变长度的行,我不会获得切换到固定长度的CHAR字段的速度优势。 但是,当我searchMySQL的所有固定长度或可变长度字段types的列表时,我就不了了之。 我的表格包含几个DECIMAL和DATETIME字段。 我有点确定后者是固定的,但前者? 不确定。
有没有人有一个确定的清单?
从官方的MySQL文档可以看到: 数据types存储要求部分就是这一切。
CHAR列的长度固定为您在创build表时声明的长度。 长度可以是0到255之间的任何值
VARCHAR列中的值是可变长度的string。 长度可以指定为0到65,535之间的值
我一直认为最好使用VARCHAR ..因为变长比静态CHAR好