IT评测·应用市场-qidao123.com
标题:
数据库中逻辑运算符的介绍以及优先级表
[打印本页]
作者:
干翻全岛蛙蛙
时间:
2024-7-30 20:10
标题:
数据库中逻辑运算符的介绍以及优先级表
目次
1.逻辑非运算
2.逻辑与
3.逻辑或
4.逻辑异或:
5.位运算符
例:按位与
例2:按位或
例3:按位异或
例4:按位取反
例5:按位右移:
例6:按位左移
运算符的优先级表
简介:逻辑运算符主要判定表达式的真假,返回值为1,0,null
其中包罗:
逻辑非:not或!
逻辑与:and或&&
逻辑或:or或||
逻辑异或:XOR
1.逻辑非运算
规则: 当给定的值为非0 值时返回 0 ; 当给定的值为NULL 时,返回 NULL 。 例:
SELECTNOT1,NOT0,NOT(1+1),NOT!1,NOTNULL;
复制代码
2.逻辑与
规则: 运算符是当给定的全部值均为非0值,而且都不为 NULL 时,返回1; 当给定的一个值或者多个值为0时则返回 0 ;否则返回 NULL 。
SELECT 1 AND -1,0 AND 1,0 AND NULL,1 AND NULL;
复制代码
SELECT employee_id,last_name
FROM employees
WHERE salary>=10000 AND last_name LIKE '小%';
复制代码
3.逻辑或
规则:
1.当给定的值都不为NULL ,而且任何一个值为非 0 值时,则返回1 ,否则返回 0 ; 2.当一个值为NULL ,而且另一个值为非 0 值时,返回 1 ,否则返回 NULL ; 3.当两个值都为 NULL时,返回NULL 。
SELECT 1 OR -1,1 OR 0,1 OR NULL,0 || NULL,NULL || NULL;
复制代码
注意:
1.OR可以和AND一起利用,但是在利用时要注意两者的优先级 2.由于AND的优先级高于OR,因此先 3.对AND双方的操作数进行操作,再与OR中的操作数结合。
4.逻辑异或:
规则:
1.当给定的值中恣意一个值为NULL 时,则返回 NULL ; 2.如果两个非NULL的值都是 0 或者都不等于 0 时,则返回 0 ; 3.如果一个值为0 ,另一个值不为 0 时,则返回 1 。
select 1 XOR -1,1 XOR 0,0 XOR 0,1 XOR NULL,1 XOR 1 XOR 1,0 XOR 0 XOR 0
复制代码
5.位运算符
&按位与
|按位或
^按位异或
~按位取反
>>按位右移
<<按位左移
例:按位与
SELECT 1&10,20&30;
复制代码
1 的二进制数为 0001 , 10 的二进制数为 1010 ,以是 1&10 的结果为 0000 ,对应的十进制数为 0 。 20 的二进制数为10100 , 30 的二进制数为 11110 ,以是 20&30 的结果为 10100 ,对应的十进制数为 20 。(一位一位比力运算)
例2:按位或
SELECT 1|10 , 20|30;
复制代码
1 的二进制数为 0001 , 10 的二进制数为 1010 ,以是 1|10 的结果为 1011 ,对应的十进制数为 11 。 20 的二进制数为10100 , 30 的二进制数为 11110 ,以是 20|30 的结果为 11110 ,对应的十进制数为 30 。
例3:按位异或
SELECT 1^10 , 20^30;
复制代码
例4:按位取反
SELECT 10 & ~1;
复制代码
如今以按位与盘算为例:
例5:按位右移:
简介:将给定的值的二进制数的全部位右移指定的位数。右移指定的位数后,右边低位的数值被移出并丢弃,左边高位空出的位置用0 补齐。
SELECT 1>>2,4>>2;
复制代码
解释:1的二进制数为00000001,右移2位为00000000,对应的十进制数为0。
4的二进制数为00000100,右移2位为00000001,对应的十进制数为1。
例6:按位左移
简介:将给定的值的二进制数的全部位左移指定的位数。左移指定的位数后,左边高位的数值被移出并丢弃,右边低位空出的位置用0 补齐。
SELECT 1<<2,4<<2;
复制代码
1 的二进制数为 00000001 ,左移两位为 00000100 ,对应的十进制数为 4 。 4 的二进制数为 00000100 ,左移两位为00010000 ,对应的十进制数为 16 。
运算符的优先级表
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/)
Powered by Discuz! X3.4