Mysql基础教程(03):AND

发布于:2024-05-24 ⋅ 阅读:(125) ⋅ 点赞:(0)

MySQL AND 运算符的用法

本文介绍了 MySQL 中如何在 WHERE 子句中使用 AND 运算符组合多个查询条件过滤查询数据。

当使用 SELECT 查询数据时,如果 WHERE 子句中有多个条件,可以根据需要使用 AND, OR, 或者 NOT 运算符将他们组合起来。本文主要介绍 AND 运算符。

AND 运算规则

AND 运算符是一个双目逻辑运算符,用来组合两个操作数。只有当两个操作数都为真时,结果才返回真,否则返回假或者 NULL

AND 运算符语法:

a AND b

其中,a 和 b 是 AND 的两个操作数,可以是表达式,也可以是值。

不像一些编程语言,MySQL 中没有布尔类型,AND 的运算结果是 1, 0, 或着 NULL

AND 运算符的运算规则如下:

  • 如果两个操作数都不为 0 (FALSE) 并且不为 NULL 时则 AND 运算的结果为 1
SELECT 1 AND 1, 1 AND 2;
+---------+---------+
| 1 AND 1 | 1 AND 2 |
+---------+---------+
|       1 |       1 |
+---------+---------+
1 row in set (0.00 sec)
  • 如果有一个操作数为 0 (FALSE),则 AND 运算的结果为 0。这里的 0 AND NULL的结果为 0
SELECT
    0 AND 0,
    0 AND 1,
    0 AND 2,
    0 AND NULL;
+---------+---------+------------+
| 0 AND 0 | 0 AND 1 | 0 AND NULL |
+---------+---------+------------+
|       0 |       0 |          0 |
+---------+---------+------------+
1 row in set (0.00 sec)
  • 如果两个操作数中有一个为 NULL,且另一个不为 0 (FALSE),则返回 NULL
SELECT 1 AND NULL, 2 AND NULL, NULL AND NULL;
+------------+------------+---------------+
| 1 AND NULL | 2 AND NULL | NULL AND NULL |
+------------+------------+---------------+
|       NULL |       NULL |          NULL |
+------------+------------+---------------+
  • 两个操作数的前后顺序不影响 AND 操作符的运算结果
SELECT 1 AND 0, 0 AND 1, 1 AND NULL, NULL AND 1;
+---------+---------+------------+------------+
| 1 AND 0 | 0 AND 1 | 1 AND NULL | NULL AND 1 |
+---------+---------+------------+------------+
|       0 |       0 |       NULL |       NULL |
+---------+---------+------------+------------+

WHERE 子句中的AND

在 WHERE 子句中, AND 连接两个比较条件。一般的形式如下:

column_name1 = value1 AND column_name2 = value2

WHERE 子句中的 AND 过滤那些同时满足两个比较条件的记录行。

也就是说,如果数据表中的记录行,必须同时满足字段 column_name1 的值为 value1column_name2 的值为 value2 两个条件,才是符合条件的记录行。

结论

本文通过实例介绍了 MySQL 中 AND 运算符的语法和用法。 AND 运算符的用法要点如下:

  1. AND 是双目运算符,需要两个布尔操作数。
  2. 如果两个操作数都不为 0 (FALSE) 并且不为 NULL 时,则 AND 运算的结果为 1
  3. 如果有一个操作数为 0 (FALSE),则 AND 运算的结果为 0
  4. 如果两个操作数中有一个为 NULL,且另一个不为 0 (FALSE),则返回 NULL
  5. 两个操作数的前后顺序不影响 AND 操作符的运算结果。
  6. WHERE 子句中的 AND 连接两个比较条件,过滤那些同时满足两个比较条件的记录行。

← Mysql基础教程(02):WHERE

Mysql基础教程(04):OR →


网站公告

今日签到

点亮在社区的每一天
去签到