假设我有一个包含数百万行的表,其中有 3 个整数变量:x、y 和 z,我在 SELECT 中针对它们进行搜索... WHERE x=a and y=b and z=c
哪个会更快/更有效率?
将 3 个字段组合成一个单独的字符串列“x_y_z”(例如 1231_3242_6864)并为其建立索引
针对三个整数创建 3 列索引?
最佳答案
不,这会更糟,字符串比较要慢得多。您最终可以(如果真的需要,我不推荐这样做)将 3 个整数合并为一个整数,但只有如果它们合适。
但是,要解决您的索引,最简单的问题是在 x、y 和 z 上创建一个复合索引。
关于MySQL : combining multiple integer fields into one string field?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11192304/