MySQL - 数据查询_简单查询_between_and查询详解

本文介绍了MySQL中使用BETWEEN AND关键字进行数据查询的方法,包括如何查询指定范围内数据及排除范围的数据,主要应用于数字类型的字段。
摘要由CSDN通过智能技术生成

数据查询

查询数据是指从数据库中获取所需要的数据。如Jack 要达到验证用户名和密码的目的,就需要从数据库已保存的用户表中读取当前用户的密码进行验证,以验明正身!保存查询数据是数据库操作中常用且重要的操作。用户可以根据自己对数据的需求,使用不同的查询方式,获得不同的数据。

BETWEEN AND查询

当我们需要查询指定范围内的数据(如: id 从0 到 100)的时候,MySQL提供了关键字BETWEEN AND,用来实现判断字段的数值是否在指定范围内的条件查询。该关键字的具体语法形式如下:

SELECT field1,field2,…,fieldn  
FROM tablename WHERE fieldm BETWEEN minvalue AND maxvalue  

在上述语句中,参数fieldn表示名称为tablename的表中的字段名,通过关键字BETWEEN和AND来设置字段field的取值范围,如果字段field的值在所指定的范围内,那么满足查询条件,该记录会被查询出来,否则不会被查询出来。

BETWEEN minvalue AND maxvalue,表示的是一个范围间的判断过程,只针对数字类型。

1.符合范围的数据记录查询
通过关键字BETWEEN和AND设置查询范围,以实现查询语文成绩(字段Chinese)在80和90之间的学生,具体SQL如下:

mysql>  create database school;   #创建数据库school  
mysql>  use school;   #选择数据库school  
mysql> create table grade(id int UNIQUE AUTO_INCREMENT, name varchar(128) NOT NULL, math tinyint unsigned, chinese tinyint unsigned, english tinyint unsigned, create_date  date);       #创建成绩表 grade   
mysql> insert into grade values(1, '甲', 80, 87, 91,'2020-02-03'),(2,'乙', 72, 64, 89,'2020-05-01'),(3, '丙', 54, 69, 87,'2020-04-21'),(4,'丁', 78, 79, 89, '2020-06-04');  # 插入多条记录   
mysql> select * from class where chinese between  80 and 90 ;  #查询成绩表中语文成绩在8090 之间的学员记录 
mysql> select * from grade where create_date between '2020-05-01' and '2020-06-04'

2. 不符合范围的数据记录查询

通过关键字NOT设置反向查询非查询范围的条件,具体SQL语句如下:

SELECT name,chinese   
FROM grade WHERE Chinese NOT BETWEEN 85 AND 90;  

上面语句等同于:

select name,chinese from grade where chinese <85 or chinese >90;

具体操作

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

结语:

时间: 2020-07-11

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值