当前位置:   article > 正文

mysql 位操作

mysql 位操作

位操作

位操作是程序设计中对位模式按位或二进制数的一元和二元操作. 在许多古老的微处理器上, 位运算比加减运算略快, 通常位运算比乘除法运算要快很多. 在现代架构中, 情况并非如此:位运算的运算速度通常与加法运算相同(仍然快于乘法运算)。

SQL位操作

十进制数字:1
二进制表示:00000001(高位补0)

SQL语句

在MySQL 中, 常量数字默认会以8个字节来表示, 8个字节即为64位,也就是说, 在MySQL数据库中, 每一个数字并不止8位, 即使很小, 也是默认占64位的空间 (还有56个看不见的0在前面占着位置),执行下列SQL:

SELECT 1<<56>>63;
SELECT 1<<57>>63;
SELECT 1<<58>>63;
SELECT 1<<59>>63;
SELECT 1<<60>>63;
SELECT 1<<61>>63;
SELECT 1<<62>>63;
SELECT 1<<63>>63;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

结果:

0
0
0
0
0
0
0
1
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

将结果拼起来00000001,就是1(高位补0)的二进制值。
在进行实际使用的时候只需要修改1为你要查询的值即可。如:

SELECT `status`<<63>>63  FROM student where id = 'zhangsan'; 
  • 1

status<<63>>63
指的是取最右边的一位数

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号