读书笔记--SQL必知必会04--过滤数据
来源:互联网 发布:arma预测C 源码 编辑:程序博客网 时间:2024/06/06 11:39
4.1 使用WHERE子句
在SELECT语句中,数据根据WHERE子句中指定搜索条件进行过滤。
搜索条件(search criteria)也称为(filter condition)。
WHERE子句在表名之后使用。同时使用ORDER BY和WHERE子句时,ORDER BY位于WHERE之后。
MariaDB [sqlbzbh]> SElECT prod_name, prod_price FROM Products WHERE prod_price=3.49;+---------------------+------------+| prod_name | prod_price |+---------------------+------------+| Fish bean bag toy | 3.49 || Bird bean bag toy | 3.49 || Rabbit bean bag toy | 3.49 |+---------------------+------------+3 rows in set (0.00 sec)MariaDB [sqlbzbh]> MariaDB [sqlbzbh]> SElECT prod_name, prod_price FROM Products WHERE prod_price = 3.49 ORDER BY prod_name;+---------------------+------------+| prod_name | prod_price |+---------------------+------------+| Bird bean bag toy | 3.49 || Fish bean bag toy | 3.49 || Rabbit bean bag toy | 3.49 |+---------------------+------------+3 rows in set (0.00 sec)MariaDB [sqlbzbh]>
4.2 WHERE子句操作符
等于: = 不等于:!= 或者 <>。 并非所有DBMS都同时支持这两种不等于操作符。大于:> 小于:<大于等于:>= 小于等于:<=不大于:!> 不小于:!<在指定的两个值之间:BETWEEN为NULL值:IS NULL
4.2.1 检查单个值
MariaDB [sqlbzbh]> SElECT prod_name, prod_price FROM Products WHERE prod_price < 10;+---------------------+------------+| prod_name | prod_price |+---------------------+------------+| Fish bean bag toy | 3.49 || Bird bean bag toy | 3.49 || Rabbit bean bag toy | 3.49 || 8 inch teddy bear | 5.99 || 12 inch teddy bear | 8.99 || Raggedy Ann | 4.99 || King doll | 9.49 || Queen doll | 9.49 |+---------------------+------------+8 rows in set (0.00 sec)MariaDB [sqlbzbh]>
4.2.2 不匹配检查
如果将值与字符串类型的列进行比较,就需要使用单引号来限定字符串。
用来与数值列进行比较的值不用引号。
MariaDB [sqlbzbh]> SElECT vend_id, prod_name FROM Products WHERE vend_id <> 'DLL01';+---------+--------------------+| vend_id | prod_name |+---------+--------------------+| BRS01 | 8 inch teddy bear || BRS01 | 12 inch teddy bear || BRS01 | 18 inch teddy bear || FNG01 | King doll || FNG01 | Queen doll |+---------+--------------------+5 rows in set (0.00 sec)MariaDB [sqlbzbh]>
4.2.3 范围值检查
使用BETWEEN操作符检查某个范围的值时,必须指定范围的开始值和结束值,而且这两个值必须用AND关键字分隔。
MariaDB [sqlbzbh]> SElECT prod_name, prod_price FROM Products WHERE prod_price BETWEEN 5 AND 10;+--------------------+------------+| prod_name | prod_price |+--------------------+------------+| 8 inch teddy bear | 5.99 || 12 inch teddy bear | 8.99 || King doll | 9.49 || Queen doll | 9.49 |+--------------------+------------+4 rows in set (0.00 sec)MariaDB [sqlbzbh]>
4.2.4 空值检查
在一个列不包含值时,称为包含空值NULL,表示无值(no value)。
注意:在进行匹配过滤和非匹配过滤时,不会返回含NULL值的行。
MariaDB [sqlbzbh]> SELECT prod_name FROM Products WHERE prod_price IS NULL;Empty set (0.00 sec)MariaDB [sqlbzbh]> MariaDB [sqlbzbh]> SELECT cust_name FROM Customers WHERE cust_email IS NULL;+---------------+| cust_name |+---------------+| Kids Place || The Toy Store |+---------------+2 rows in set (0.00 sec)MariaDB [sqlbzbh]> MariaDB [sqlbzbh]> SELECT cust_email FROM Customers;+-----------------------+| cust_email |+-----------------------+| sales@villagetoys.com || NULL || jjones@fun4all.com || dstephens@fun4all.com || NULL |+-----------------------+5 rows in set (0.00 sec)MariaDB [sqlbzbh]> SELECT cust_email FROM Customers WHERE cust_email != 'sales@villagetoys.com';+-----------------------+| cust_email |+-----------------------+| jjones@fun4all.com || dstephens@fun4all.com |+-----------------------+2 rows in set (0.00 sec)MariaDB [sqlbzbh]>
阅读全文
0 0
- Database - 读书笔记--SQL必知必会04--过滤数据
- 读书笔记--SQL必知必会04--过滤数据
- 读书笔记--SQL必知必会05--高级数据过滤
- SQL必知必会--过滤数据
- MYSQL必知必会读书笔记 第六章 过滤数据
- MYSQL必知必会读书笔记 第七章 数据过滤
- Hibernate读书笔记-----数据过滤
- Database - 读书笔记--SQL必知必会06--用通配符进行过滤
- 读书笔记--SQL必知必会06--用通配符进行过滤
- SQL必知必会 笔记 第四章 过滤数据
- MYSQL必知必会读书笔记 第九章 使用正则表达式过滤数据
- sql数据过滤
- SQL过滤数据
- SQL高级数据过滤
- SQL 过滤数据
- 读书笔记--SQL必知必会02--检索数据
- 读书笔记--SQL必知必会03--排序检索数据
- 读书笔记--SQL必知必会09--汇总数据
- 读书笔记--SQL必知必会02--检索数据
- 读书笔记--SQL必知必会03--排序检索数据
- Docker
- 专业课程设计之客户与服务器程序的同步与通信机制的设计(四)信号量
- logistic回归算法原理及python实现
- 读书笔记--SQL必知必会04--过滤数据
- 读书笔记--SQL必知必会05--高级数据过滤
- 人工“碳”索意犹尽,智能“硅”来未可知(深度学习入门系列之二)
- 数据结构与算法题目汇总
- Testing
- Struts2之方法拦截器
- 读书笔记--SQL必知必会06--用通配符进行过滤
- 读书笔记--SQL必知必会07--创建计算字段
- 最长的0,1相等子串