从位字段mysql获取一位索引

时间:2011-12-05 20:50:50

标签: mysql bit bit-fields

有没有办法从mysql的位字段中获取一位(或bool)?

我想出的唯一解决方案是使用以下内容: 我想要位置三的位值。

SELECT bit_count(bin(column) & b'100') AS bitValue FROM table;

此查询的输出为1或0。但它看起来并不那么好。 有没有更好的方法来获取位域中特定位置的位值? 读取位值将在我的Web应用程序中大量完成,您是否认为获取上面使用的值的方式会对性能产生影响?我的意思是同时使用bit_count和BIN()以及“和”运算符..

我正在寻找类似的东西:

SELECT column(3) FROM table;

感谢阅读!

的Mattias。

1 个答案:

答案 0 :(得分:2)

如果您担心读取性能并且您感兴趣的位已修复,请尝试提取该位并将其插入布尔列。如果您要提取的位是动​​态的,我认为您的解决方案是最佳的。