日期:2014-05-17  浏览次数:20409 次

SQL语句咨询 求大神级别的帮忙讲解下
今天看一个脚本 里面有这么一段 where ....and (status & 8388608)=0 
求大神帮忙解释下 这句是什么意思 百度了一下 没找到满意的答案 还有这个status代表什么啊?
语句

------解决方案--------------------
这个 (status & 8388608)=0  关键就在于运算符& ,是位与符号,也就是通过二进制,每一位都进行与的运算:

这个8388608的二进制就是这个:100000000000000000000000

那么status & 100000000000000000000000 要等于0,那么只能是当status为8388608时,才不会返回0,其他时候,不管status的值是多少,与100000000000000000000000 数进行&操作,都会返回0.

所以这个(status & 8388608)=0 转化一下就是:

status != 8388608