在MySQL枚举字段中使用符号,这是一个好主意吗?

在MySQL枚举字段中使用符号,这是一个好主意吗?,mysql,types,enums,Mysql,Types,Enums,最近我研究了MySQL性能和最佳实践,最近我发现ENUM字段具有更好的性能: 但是我想知道,使用符号设置ENUM字段是否是一个好主意,因为我目前有一个带有“正”、“负”、“中性”的ENUM字段,并且正在考虑执行类似ENUM(“+”、“-”、“=”)的操作,以便提取数据并在该表中节省一些空间。 此字段将受连接(因此是索引)、where语句、group BY等的约束 这是一个好方法吗?我不想以后发现这不是一个好办法。我不明白为什么这是一个不好的办法。就速度而言,你可能得不到那么多。。。但是这些符号准

最近我研究了MySQL性能和最佳实践,最近我发现ENUM字段具有更好的性能:

但是我想知道,使用符号设置ENUM字段是否是一个好主意,因为我目前有一个带有“正”、“负”、“中性”的ENUM字段,并且正在考虑执行类似ENUM(“+”、“-”、“=”)的操作,以便提取数据并在该表中节省一些空间。 此字段将受连接(因此是索引)、where语句、group BY等的约束


这是一个好方法吗?我不想以后发现这不是一个好办法。

我不明白为什么这是一个不好的办法。就速度而言,你可能得不到那么多。。。但是这些符号准确地表达了它们的意思,所以我认为这不是一个坏主意。

它会让你获得绝对零的速度。
枚举更快,因为它们不是以文本形式存储,而是以整数形式存储

在内部,枚举存储为:

"Positive"  => 1
"Negative"  => 2
"Neutral"   => 3
在执行查询之前,MySQL将值转换为整数表示形式。
而不是在string=“Positive”类型的
字段中测试
MySQL将执行tinyint=1类型的
字段

底线
您将不会节省任何空间。
你不会获得任何速度


我建议不要这样做。

除了空间/性能主题之外,我个人还没有听说过任何MySQL“保留字”或符号,在查询中使用符号有限制吗?(与我正在使用的符号不同)@user550178,不,不是真的,像
'
和\和
%
\
这样的符号需要特殊处理,但是使用\