如果我有这样一张表:
CREATE TABLE sizes (
name ENUM('small', 'medium', 'large')
);
MySQL 是要在每一行中存储这些字符串,还是在内部使用更小的东西(例如整数)来知道要引用哪个枚举值?
我想在表中使用枚举,但我担心它是否像在每一行中存储一个字符串一样浪费。
最佳答案
它在 INSERT/UPDATE 时将它们转换为整数,并在 SELECT 时将它们转换回字符串,因此内部存储是整数,但您不会接触到它。
您可以检索整数,如 SELECT mycolumn + 0
。
关于mysql - MySQL 如何存储枚举?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/259547/