当前位置: 首页 > news >正文

Mysql基础教程(03):AND

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
SELECT0 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 →

http://www.lryc.cn/news/350791.html

相关文章:

  • 为什么要使用 eval
  • BCD编码(8421)介绍
  • 前端javascript包管理,npm升级用pnpm
  • 数据库操作(函数)
  • [建堆堆排序的时间复杂度推导]向上建堆向下建堆堆排序的时间复杂度分析推导
  • 【C++初阶】--- C++入门(上)
  • 安装和使用图像处理软件GraphicsMagick @FreeBSD
  • 一款功能强大的安卓虚拟机应用——VMOS Pro使用分享
  • 【408真题】2009-12
  • vue3第三十三节(TS 之 computed watch)
  • 工厂模式(简单工厂模式+工厂模式)
  • 整理好了!2024年最常见 20 道 Redis面试题(四)
  • sudo pip3 install rpi_ws281x error: externally-managed-environment
  • day08-Java常用API
  • 设计模式--建造者模式
  • 运行时间比较
  • 【系统架构师】-案例篇(十四)数据库与分布式
  • Golang实现递归复制文件夹
  • 【漏洞复现】用友U8 CRM uploadfile 文件上传致RCE漏洞
  • 键盘盲打是练出来的
  • 构建sqli-labs学习环境与掌握SQL注入技术教程
  • 力扣HOT100 - 1143. 最长公共子序列
  • 【贪心算法题目】
  • yarn常用命令
  • nginx+nginx-http-flv-module在Linux服务器搭建
  • 多线程(八)
  • 投骰子——(随机游戏的控制)
  • 找出最长等值子数组
  • Go 切片常用操作与使用技巧
  • 2024 中青杯高校数学建模竞赛(A题)数学建模完整思路+完整代码全解全析