MySQL基础知识——AND&OR

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: MySQL基础知识

AND 和 OR 作用

AND 和 OR 运算符用于基于一个以上的条件对记录进行过滤,通常使用在WHERE后面。其中AND表示并且的意思,OR表示或者的意思


AND 和 OR 使用

AND 和 OR 可在 WHERE 子语句中把两个或多个条件结合起来。如果第一个条件和第二个条件都成立,则 AND 运算符显示符合条件的记录。如果第一个条件或第二个条件中只要有一个成立,则 OR 运算符显示符合条件的记录。


示例数据

我们以customers表为示例数据进行讲解。

80.jpg

                                               表customers


AND实例

我们要查询城市是"广州"并且姓名为"王五"的客户信息,可以这样写

SELECT *
FROM customers
WHERE `城市`='广州'
AND `姓名`='王五'

结果为:

81.jpg

AND就是要所有条件都满足才会显示相关数据


OR实例

我们要查询城市是"广州"或者姓名为"王五"的客户信息,可以这样写


SELECT *
FROM customers
WHERE `城市`='广州'
OR`姓名`='王五'


结果为:

82.jpg

OR则是只需要要满足其中一个条件就会显示相关数据,这里城市为“广州”的有两天记录,所以两条都会显示出来。


AND和OR一起使用

我们在查询时遇到比较复杂的条件时,AND和OR可能会一起使用。在使用OR的表达式时,如果是同类型的记得要用()包起来,否则会出现你意想不到的结果。例如我们想查询姓名为"张三"或者"王五",并且他们所在的城市必须是"广州"的客户信息,可以这样写:


SELECT *
FROM customers
WHERE  (`姓名`='张三' OR `姓名`='王五')
AND`城市`='广州'


结果为:

83.jpg

因为张三所在的城市并不是"广州",所以被过滤掉了。

如果上面WHERE子句部分我们不加()会怎么样呢?


SELECT *
FROM customers
WHERE  `姓名`='张三' OR `姓名`='王五'
AND`城市`='广州'


结果为:

84.jpg

由于没有加括号,只要满足姓名为"张三"的数据行就会被显示,但与我们的需要是不一致的,所以在使用OR的时候务必读懂需求。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6月前
|
SQL 关系型数据库 MySQL
【MySQL】— —熟练掌握用SQL语句实现数据库和基本表的创建。熟练掌握MySQL的安装、客户端登录方法;熟练掌握MySQL的编码、数据类型等基础知识;掌握实体完整性的定义和维护方法、掌握参照完整性
【MySQL】— —熟练掌握用SQL语句实现数据库和基本表的创建。熟练掌握MySQL的安装、客户端登录方法;熟练掌握MySQL的编码、数据类型等基础知识;掌握实体完整性的定义和维护方法、掌握参照完整性
|
关系型数据库 MySQL 数据库
掌握MySQL数据库基础知识 同步练习与实训
掌握MySQL数据库基础知识 同步练习与实训。
131 0
|
5月前
|
存储 SQL 关系型数据库
MySQL基础知识
【6月更文挑战第13天】MySQL基础知识
49 7
|
5月前
|
关系型数据库 MySQL Linux
MySQL数据库基础知识
【6月更文挑战第20天】MySQL数据库基础知识。
64 3
|
6月前
|
关系型数据库 MySQL 数据库
MySQL数据表的基础知识
MySQL数据表的基础知识
37 0
|
6月前
|
关系型数据库 MySQL 数据库
MySQL基础知识
MySQL基础知识
54 0
|
6月前
|
关系型数据库 MySQL PHP
MySQL基础知识之【元数据】
MySQL基础知识之【元数据】
81 1
|
6月前
|
SQL 前端开发 关系型数据库
MYSQL基础知识之【复制表】
MYSQL基础知识之【复制表】
80 1
|
6月前
|
SQL 前端开发 关系型数据库
MYSQL基础知识之【修改数据,删除数据】
MYSQL基础知识之【修改数据,删除数据】
74 1
|
6月前
|
存储 关系型数据库 MySQL
MySQL入门:了解数据库基础知识
MySQL入门:了解数据库基础知识
88 0