与BITWISE混淆,我正在使用MySQL

时间:2011-01-07 15:45:15

标签: mysql bit-manipulation

我想我需要使用Bitwise和MySQL。

但是,我对

感到困惑
SELECT 29 | 15;

返回

 31

http://dev.mysql.com/doc/refman/5.0/en/bit-functions.html

我一直在阅读我能理解的关于按位的内容,但我迷路了。

2 个答案:

答案 0 :(得分:6)

好吧,在29中,设置了位16,8,4和1.

在15中,设置位8,4,2和1.

“x或y”(|)表示:“设置在x或y或两者中设置的所有位”。

所以,在29 |在图15中,位16,8,4,2和1都被设置。

16 + 8 + 4 + 2 + 1 = 31.

这会回答你的问题吗?

答案 1 :(得分:1)

与(如果你进行二元操作)相同

 11101 OR 01111 =   11111 = 31 in decimal

其中11101是十进制29的二进制表示,01111是十进制15的二进制表示

建议阅读