BETWEEN AND查询
当我们需要查询指定范围内的数据(如:id从0~100)的时候,MySQL提供了关键字BETWEEN AND,用来实现判断字段的数值是否在指定范围内的条件查询。该关键字的具体语法形式如下:
SELECT field1,field2...FROM tablename WHERE fieldmBETWEEN minvalue AND maxvalue;
在上述语句中,参数field表示名称呢过为tablename的表中的字段名,通过关键字BETWEEN和AND来设置字段field的取值范围,如果字段field的值在所指定的范围内,那么满足查询条件,该记录会被查询出来,否则不会被查询出来。BETWEEN minvalue AND maxvalue,表示的是一个范围见的判断过程,只针对数字类型。
符合范围的数据记录查询
代码示例:
mysql> create table class1(id int,name varchar(64),int grade); #创建表
mysql> insert into class1 values(1,'Mr.Wang',87),(2,'Song',45),(3,'Mr.Shi',69),(4,'Mr.Li',73); #插入多列数据
mysql> select*from class1 where grade between 60 and 100; #通过between and显示出60~90的数据
通过BETWEEN AND方式即可查询出字段grade的值在60~100之间的数据。
不符合范围的数据记录查询
通过关键字NOT设置反向查询非查询范围的条件。
代码如下:
mysql> select*from class1 where grade not between 60 and 100; #显示grade字段小于60大于100的数据
mysql> select*from class1 where grade<60 or grade>100; #通过or来达到同样的效果
接上一个表通过not between and来设置小于60大于100的数据也可以通过or或的方式来设置。