Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
如果您有一个 MySQL 表,其中包含大量行中的可变长度字段,该字段经常在WHEREorORDER BY子句中使用,并且很少使用INSERTSor UPDATES,那么它将是在字段上使用索引的好选择.
WHERE
ORDER BY
INSERTS
UPDATES
但是,从我在该主题上可以找到的内容来看,当您以这种方式对可变长度字段进行索引时,MySQL 似乎不能很快地处理可变长度字段(与固定长度字段相比)。所以,我想知道用空字符串填充列的行是否有意义,以强制它们全部达到某个固定的最大长度。这有什么意义吗?还是我只是在想这个?
再查阅手册后,我意识到这是 MySQL 中已经包含的“功能”:
CHAR 列的长度固定为您在创建表时声明的长度。长度可以是 0 到 255 之间的任何值。存储 CHAR 值时,它们会用空格右填充到指定的长度。检索 CHAR 值时,将删除尾随空格。