首页 > 数据库 > mysql教程 > MySQL 中'AND”和'&&”的区别?

MySQL 中'AND”和'&&”的区别?

WBOY
发布: 2023-08-28 19:57:06
转载
1015 人浏览过

MySQL 中“AND”和“&&”的区别?

注意:AND 和 && 之间只有一个区别,即 AND 是一种标准语法,而 && 是所有权语法。

除上述语句外,AND 和 && 之间没有任何区别。让我们看看所有的条件。

AND 和 && 的结果总是 1 或 0。众所周知,AND 和 && 都是逻辑运算符,如果有多个操作数且任意其中一个值为 0,则结​​果为 0,否则为 1。

这里是 AND 和 && 的演示。

情况 1(a):如果两个操作数都是1。使用AND。

查询如下:

mysql> select 1 AND 1 as Result;
登录后复制

以下是输出结果:

+--------+
| Result |
+--------+
|      1 |
+--------+
1 row in set (0.00 sec)
登录后复制
登录后复制

情况1(b):如果两个操作数都是1。使用&&。

查询如下:

mysql> select 1 && 1 as Result;
登录后复制

以下是输出结果:

+--------+
| Result |
+--------+
|      1 |
+--------+
1 row in set (0.00 sec)
登录后复制
登录后复制

情况2(a):如果任意一个操作数为0,则结果为0。使用AND。

查询如下:

mysql> select 1 AND 0 as Result;
登录后复制

以下是输出结果:

+--------+
| Result |
+--------+
|      0 |
+--------+
1 row in set (0.00 sec)
登录后复制
登录后复制

情况2(b):如果任何一个操作数为0,则结果变为0。使用&&。

查询如下:

mysql> select 1 && 0 as Result;
登录后复制

以下是输出结果:

+--------+
| Result |
+--------+
|      0 |
+--------+
1 row in set (0.00 sec)
登录后复制
登录后复制

这是空值情况。

情况3(a):如果任何一个操作数为NULL,则结果变为NULL。使用AND。

查询如下:

mysql> select NULL AND 1 as Result;
登录后复制

以下是输出结果:

+--------+
| Result |
+--------+
|   NULL |
+--------+
1 row in set (0.00 sec)
登录后复制
登录后复制

情况 3(b):如果任一操作数为 NULL,则结果变为 NULL。使用&&。

查询如下:

mysql> select NULL && 1 as Result;
登录后复制

以下是输出结果:

+--------+
| Result |
+--------+
|   NULL |
+--------+
1 row in set (0.00 sec)
登录后复制
登录后复制

注意:上面讨论的情况不仅仅依赖于1和0。任何非零值都将为真,这意味着如果我们对两个负数进行AND或&&运算,结果将变为1。

看看负数的情况。查询如下:

mysql> select -10 AND -30 as Result;
+--------+
| Result |
+--------+
|      1 |
+--------+
1 row in set (0.04 sec)
mysql> select -10 && -30 as Result;
+--------+
| Result |
+--------+
|      1 |
+--------+
1 row in set (0.00 sec)
登录后复制

在上述情况下,如果任何一个值为0,则在AND和&&中结果都变为0。查询如下:

mysql> select -10 AND 0 as Result;
+--------+
| Result |
+--------+
|      0 |
+--------+
1 row in set (0.00 sec)
登录后复制

看看积极的案例。查询如下:

mysql> select 10 AND 30 as Result;
+--------+
| Result |
+--------+
|      1 |
+--------+
1 row in set (0.00 sec)
mysql> select 10 && 30 as Result;
+--------+
| Result |
+--------+
|      1 |
+--------+
1 row in set (0.00 sec)
登录后复制

其中,如果任意一个操作数变为0,则结果变为0。查询如下:

mysql> select 10 and 0 as Result;
+--------+
| Result |
+--------+
|      0 |
+--------+
1 row in set (0.00 sec)
mysql> select 10 && 0 as Result;
+--------+
| Result |
+--------+
|      0 |
+--------+
1 row in set (0.00 sec)
登录后复制

以上是MySQL 中'AND”和'&&”的区别?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板