MySQL基础(三):过滤数据

过滤数据


使用SELECT语句的WHERE子句指定搜索条件。

使用WHERE子句


在SELECT语句中,数据根据WHERE子句中指定的搜索条件进行过滤。 WHERE子句在表名(FROM子句)之后给出,如下所示:

输入

SELECT prod_name, prod_price
FROM products
WHERE prod_price = 2.50;

输出

MySQL基础(三):过滤数据

分析

这条语句从products表中检索两个列,但不返回所有行,只返回prod_price值为2.50的行。

注意:在同时使用ORDERBY和WHERE子句时,应该让ORDER BY位于WHERE之后,否则将会产生错误。

WHERE子句操作符


我们在关于相等的测试时看到了第一个WHERE子句,它确定一个列是否包含特定的值,下表中列出的所有条件操作符。

MySQL基础(三):过滤数据

范围值检查


下面的例子说明如何使用BETWEEN操作符,它检索价格在5美元和10美元之间的所有产品:

输入

SELECT prod_name, prod_price
FROM products
WHERE prod_price BETWEEN 5 AND 10;

输出

MySQL基础(三):过滤数据

分析

从这个例子中可以看到,在使用BETWEEN时,必须指定两个值所需范围的低端值和高端值。这两个值必须用AND关键字分隔。BETWEEN匹配范围中所有的值,包括指定的开始值和结束值。

空值检查


SELECT语句有一个特殊的WHERE子句,可用来检查具有NULL值的列。这个WHERE子句就是IS NULL子句。其语法如下:

输入

SELECT cust_id
FROM customers
WHERE cust_email IS NULL;

输出

MySQL基础(三):过滤数据

分析

注意:在通过过滤选择出不具有特定值的行时,你可能希望返回具有NULL值的行。但是,不行。因为未知具有特殊的含义,数据库不知道它们是否匹配,所以在匹配过滤或不匹配过滤时不返回它们。因此,在过滤数据时,一定要验证返回数据中确实给出了被过滤列具有NULL的行。

MySQL基础(三):过滤数据

上一篇:mysql 日期处理


下一篇:lnmp打开cacti时提示PHP Warning: date()