一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第7天,点击查看活动详情。
前言
上篇我们学习完了比较运算符,有兴趣的小伙伴可以阅读(# MySQL学习-运算符(六))。
下面继续学习MySQL中的运算符。今天开始学习逻辑运算符。
逻辑运算符
逻辑运算符主要用来判断表达式的真假,在MySQL中,逻辑运算符的返回结果为1、0或者NULL。 MySQL中支持的4种逻辑运算符如下:
| 运算符 | 名称 | 作用 | 示例 |
|---|---|---|---|
| NOT 或 ! | 逻辑非运算符 | 逻辑非 | SELECT NOT A |
| AND 或 && | 逻辑与运算符 | 逻辑与 | SELECT A AND B SELECT A && B |
| OR 或 || | 逻辑或运算符 | 逻辑或 | SELECT A OR B SELECT A || B |
| XOR | 逻辑异或运算符 | 逻辑异或 | SELECT A XOR B |
逻辑非运算符
逻辑非运算符,对表达式结果进行反转,非真即假,非假即真。
示例一
SELECT 100
FROM DUAL
WHERE NOT 0
结果如下:
| 100 |
|---|
| 100 |
这里可以查出结果是100。表达式0表示假,NOT 0表示真。这就是非假即真。
示例二
SELECT 100
FROM DUAL
WHERE NOT 1
结果如下:
| 100 |
|---|
这里看到没有查到结果。表达式1表示真,NOT 1表示假。这就是非真即假。所以也查不出结果。
逻辑与运算符
逻辑与运算符,判断两边的表达式,有假即假,都真才真。
示例三
SELECT 100
FROM DUAL
WHERE 1 AND 0
结果如下:
| 100 |
|---|
这里看到没有查到结果。表达式1表示真,0表示假。使用AND运算符,表示假。这就是有假即假。
示例四
SELECT 100
FROM DUAL
WHERE 1 AND 1
结果如下:
| 100 |
|---|
| 100 |
这里可以查出结果是100。左边表达式1表示真,右边表达式1表示真。使用AND运算符,表示真。这就是都真才真。
逻辑或运算符
逻辑或运算符,判断两边的表达式,有真即真,都假才假。
示例五
SELECT 100
FROM DUAL
WHERE 1 OR 0
结果如下:
| 100 |
|---|
| 100 |
这里可以查出结果是100。左边表达式1表示真,右边表达式0表示假。使用OR运算符,表示真。这就是有真即真。
示例六
SELECT 100
FROM DUAL
WHERE 0 OR 0
结果如下:
| 100 |
|---|
这里看到没有查到结果。左边表达式0表示假,右边表达式0表示假。使用OR运算符,表示假。这就是都假才假。
逻辑异或运算符
逻辑异或运算符,判断两边的表达式,相同结果为0,表示假,不相同结果为1,表示真。
示例七
SELECT 100
FROM DUAL
WHERE 0 XOR 0
结果如下:
| 100 |
|---|
这里看到没有查到结果。左右两边的表达式都为0,相同,结果为0,表示假,查不出结果。
示例八
SELECT 100
FROM DUAL
WHERE 1 XOR 0
结果如下:
| 100 |
|---|
| 100 |
这里可以查出结果是100。左右两边的表达式一个为1,一个为0,不相同,结果为1,表示真,可以查出结果。
学到这里,逻辑运算符就学完了,明天继续。