专业网站制作地址礼品册兑换 网站建设
逻辑运算符
逻辑运算符用来判断表达式的真假。如果表达式是真,结果返回 1。如果表达式是假,结果返回 0。
| 运算符号 | 作用 | 
|---|---|
| NOT 或 ! | 逻辑非 | 
| AND | 逻辑与 | 
| OR | 逻辑或 | 
| XOR | 逻辑异或 | 
1、与
mysql> select 2 and 0;
+---------+
| 2 and 0 |
+---------+
|       0 |
+---------+mysql> select 2 and 1;   
+---------+     
| 2 and 1 |      
+---------+      
|       1 |      
+---------+
 
2、或
mysql> select 2 or 0;
+--------+
| 2 or 0 |
+--------+
|      1 |
+--------+mysql> select 2 or 1;
+--------+
| 2 or 1 |
+--------+
|      1 |
+--------+mysql> select 0 or 0;
+--------+
| 0 or 0 |
+--------+
|      0 |
+--------+mysql> select 1 || 0;
+--------+
| 1 || 0 |
+--------+
|      1 |
+--------+
 
3、非
mysql> select not 1;
+-------+
| not 1 |
+-------+
|     0 |
+-------+mysql> select !0;
+----+
| !0 |
+----+
|  1 |
+----+
 
4、异或
mysql> select 1 xor 1;
+---------+
| 1 xor 1 |
+---------+
|       0 |
+---------+mysql> select 0 xor 0;
+---------+
| 0 xor 0 |
+---------+
|       0 |
+---------+mysql> select 1 xor 0;
+---------+
| 1 xor 0 |
+---------+
|       1 |
+---------+mysql> select null or 1;
+-----------+
| null or 1 |
+-----------+
|         1 |
+-----------+mysql> select 1 ^ 0;
+-------+
| 1 ^ 0 |
+-------+
|     1 |
+-------+
 
位运算符
位运算符是在二进制数上进行计算的运算符。位运算会先将操作数变成二进制数,进行位运算。然后再将计算结果从二进制数变回十进制数。
| 运算符号 | 作用 | 
|---|---|
| & | 按位与 | 
| 丨 | 按位或 | 
| ^ | 按位异或 | 
| ! | 取反 | 
| << | 左移 | 
| >> | 右移 | 
1、按位与
mysql> select 3&5;
+-----+
| 3&5 |
+-----+
|   1 |
+-----+
 
2、按位或
mysql> select 3|5;
+-----+
| 3|5 |
+-----+
|   7 |
+-----+
 
3、按位异或
mysql> select 3^5;
+-----+
| 3^5 |
+-----+
|   6 |
+-----+
 
4、按位取反
mysql> select ~18446744073709551612;
+-----------------------+
| ~18446744073709551612 |
+-----------------------+
|                     3 |
+-----------------------+
 
5、按位右移
mysql> select 3>>1;
+------+
| 3>>1 |
+------+
|    1 |
+------+
 
6、按位左移
mysql> select 3<<1;
+------+
| 3<<1 |
+------+
|    6 |
+------+
 
运算符优先级
最低优先级为: :=。
 
最高优先级为: !、BINARY、 COLLATE。
