当前位置: 代码迷 >> SQL >> sqlite位演算,sql位运算符
  详细解决方案

sqlite位演算,sql位运算符

热度:25   发布时间:2016-05-05 13:15:38.0
sqlite位运算,sql位运算符

最近看同事在折腾sqlite数据库,若干业务字段在sqlite数据库中是按位存储在一个表的字段里的,然后同事用了一个看起来很变态的办法,比如,先找出满足条件的该物理字段的值的集合,再用in 子句,我看来觉得这个搞法很别扭,如果数据库直接支持按位运算就好办了,查了下mssql,mysql是有的,sqlite居然也是支持的,哈哈哈哈~ 

参考了: http://blog.chinaunix.net/uid-12664992-id-329608.html

按位AND:& 
按位OR:| 
按位互斥:^ 
按位取反:~


eg:UPDATE [AnalogInput] SET [Object_Type]= (15 & 3)<<2;  
得到的结果是12.


=================================================
SQLite 有如下二元运算符,根据其优先级从高到低有:


    ||
    *    /    %
    +    -
    <<   >>   &    |
    <    <=   >    >=
    =    ==   !=   <>   IN
    AND   
    OR


以下是支持的一元运算符:


    -    +    !    ~    NOT


  相关解决方案