使用BETWEEN AND关键字检索数据表中指定的数据内容。
带BETWEEN AND关键字的查询
我们已经学会了如何用IN关键字精确查询数据表中的内容,但是在很多时候,我们仅仅是想知道在某一范围内有多少符合条件的数据,这就不得不使用到关键字BETWEEN AND了,它是闭区间,前后都可以取到。
BETWEEN AND需要两个参数支持,一个是范围的开始值,另一个就是结束值了。如果字段值满足指定的范围查询条件,就返回这些满足条件的数据内容。
语法规则为: SELECT 字段名 FROM 表名 WHERE 字段名 BETWEEN n1 AND n2; 。
举个例子
假设我们现在有一张表Mall_products,内容如下:
我们将使用BETWEEN AND关键字检索出所有国家代码为1~50的商品的信息。
查询代码如下:
SELECT *
FROM Mall_products
WHERE prod_country BETWEEN 1 AND 50;
结果为:
查询过程如下:
可以看到,返回结果包含了国家代码从1~50之间的字段值。尤其值得注意的是,端点值1也包含在返回结果中。
带NOT BETWEEN AND关键字的查询
像上一关介绍的关键字IN一样,我们还可以对关键字BETWEEN AND进行取反,表示查询指定范围之外的值。
语法规则为: SELECT 字段名 FROM 表名 WHERE 字段名 NOT BETWEEN n1 AND n2; 。
举个例子
我们依然使用表Mall_products。现在我们想要查询除了国家代码为1~50的所有国家的产品内容。
查询代码如下:
SELECT *
FROM Mall_products
WHERE prod_country NOT BETWEEN 1 AND 50;
结果为:
由结果可以看出,返回的结果只有大于国家代码50的内容。
怎么样?简单吧!好了,下面轮到你们来上手试试了!