mysql过滤数据(一)
2013-10-11 22:53
309 查看
表test
在SELECT语句中,根据WHERE子句中指定的搜索条件进行过滤。WHERE子句在表名(FROM子句)之后。
****SQL过滤与应用过滤 数据也可以在应用层过滤。为此目的,SQL的SELECT语句为客户机应用检索出超过实际所需的数据,然后客户机代码对返回数据进行循环,以提取出需要的行。通常,这种实现并不令人满意。因此,对数据库进行了优化,以便快速有效地对数据进行过滤。让客户机应用(或开发语言)处理数据库的工作将会极大地影响应用的性能,并且使所创建的应用完全不具备可伸缩性。此外,如果在客户机上过滤数据,服务器不得不通过网络发送多余的数据,这将导致网络带宽的浪费。
where子句操作符
例子:
检查单个值:
SELECT * FROM test WHERE name="tom";
此语句匹配name值为tom的一行。
注:MySQL执行匹配时默认不区分大小写,所以此例中tom TOm都将被匹配。
范围值检查:
可使用BETWEEN操作符,它需要两个值,即范围开始值和范围结束值,这两个值必须用AND关键字分隔,BETWEEN匹配范围中的所有值,包括开始值和结束值。
例如:
SELECT * FROM test WHERE age BETWEEN 20 AND 50;
此句检索age值在20和50之间的所有行。
空值检查:
在一个列不包含值时,称其为包含空值NULL;
可以用IS NULL子句判断某个列的值是否为空值。
例如:SELECT * FROM test WHERE city IS NULL;
此语句返回city列为空值的所有行。
注:在通过过滤选择出不具有特定值的行时,你可能希望返回具有NULL值的行。但是,不行。因为未知具有特殊的含义,数据库不知道它们是否匹配,所以在匹配过滤或不匹配时不返回它们。因此,在过滤数据时,一定要验证返回数据中确实给出了被过滤具有NULL的行。
Field | Type | Null | Key | Default | Extra |
id | int(11) | NO | PRI | NULL | auto_increment |
name | char(50) | NO | NULL | ||
city | char(50) | YES | NULL | ||
school | char(50) | YES | NULL |
****SQL过滤与应用过滤 数据也可以在应用层过滤。为此目的,SQL的SELECT语句为客户机应用检索出超过实际所需的数据,然后客户机代码对返回数据进行循环,以提取出需要的行。通常,这种实现并不令人满意。因此,对数据库进行了优化,以便快速有效地对数据进行过滤。让客户机应用(或开发语言)处理数据库的工作将会极大地影响应用的性能,并且使所创建的应用完全不具备可伸缩性。此外,如果在客户机上过滤数据,服务器不得不通过网络发送多余的数据,这将导致网络带宽的浪费。
where子句操作符
操作符 | 说明 |
= | 等于 |
<> | 不等于 |
!= | 不等于 |
< | 小于 |
<= | 小于等于 |
> | 大于 |
>= | 大于等于 |
BETWEEN | 在指定的两个值之间 |
例子:
检查单个值:
SELECT * FROM test WHERE name="tom";
此语句匹配name值为tom的一行。
注:MySQL执行匹配时默认不区分大小写,所以此例中tom TOm都将被匹配。
范围值检查:
可使用BETWEEN操作符,它需要两个值,即范围开始值和范围结束值,这两个值必须用AND关键字分隔,BETWEEN匹配范围中的所有值,包括开始值和结束值。
例如:
SELECT * FROM test WHERE age BETWEEN 20 AND 50;
此句检索age值在20和50之间的所有行。
空值检查:
在一个列不包含值时,称其为包含空值NULL;
可以用IS NULL子句判断某个列的值是否为空值。
例如:SELECT * FROM test WHERE city IS NULL;
此语句返回city列为空值的所有行。
注:在通过过滤选择出不具有特定值的行时,你可能希望返回具有NULL值的行。但是,不行。因为未知具有特殊的含义,数据库不知道它们是否匹配,所以在匹配过滤或不匹配时不返回它们。因此,在过滤数据时,一定要验证返回数据中确实给出了被过滤具有NULL的行。
相关文章推荐
- MySQL过滤数据.md
- mysql count过滤空值,使其不将空数据计入条数
- [MYSQL-6] 过滤数据
- mysql过滤数据(三)用通配符进行过滤
- MySql 正则过滤数据 合并表多行的指定字段
- mysql 重复数据,求和过滤的处理
- MySQL过滤数据
- 【MySql】过滤数据where语句
- MySQL数据过滤和通配符过滤.md
- mysql过滤数据(二)
- MYSQL使用正则表达式过滤数据
- MYSQL 过滤数据 学习笔记
- Mysql基础——where 过滤数据
- MySQL学习4 数据过滤
- Mysql - 用正则表达式过滤数据 ( 1 )
- Python MAC地址 获取,过滤,转换 Python MYSQL 数据获取,比较
- 0506 | MySQL | 第 6 章 过滤数据
- MySQL 查询语句SELECT和数据条件过滤
- MySQL学习足迹记录07--数据过滤--用正则表达式进行检索
- Mysql的select in会自动过滤重复的数据