Mysql

关注公众号 jb51net

关闭
首页 > 数据库 > Mysql > MySQL过滤数据

MySQL过滤数据操作方法梳理

作者:刘婉晴

数据库表一般包含大量的数据,很少需要检索表中的所有行。通常只是根据特定的需要提取表数据的子集。因此检索所需数据时需要指定搜索条件,搜索条件也称为过滤条件

前言

本实验中所用数据库创建SQL语句以及插入数据到数据库中的SQL语句链接:

链接: https://pan.baidu.com/s/1BnFJrLH41iTXlYKhqPninQ?pwd=u3vs

提取码: u3vs

书接上回说到,排序检索数据

1. where 字句的使用

在 select 语句中,数据会根据 where 字句指定的条件进行过滤,where 字句在from字句( 表名)之后给出。

示例: 选出价格为 3.49 的商品

select prod_name , prod_price
from Products
where prod_price = 3.49;

注意: order by 语句与 where 语句同时出现时,order by 要在where 字句后。(order by 字句的位置一定是 select 语句的最后一条字句)

示例:选出在 3~6 元之间的产品名和价格,并按价格排序

select prod_name, prod_price
from Products
where prod_price between 3 and 6
order by prod_price;

2. where 字句操作符

where 字句具有如下操作符 = 、< 、 > 、!= 、 <= 、 >= 、!< 、 !> 、between 、is null 等

2.1 检查单个值

示例:

select prod_name, prod_price
from Products
where prod_price < 10;

2.2 不匹配检查

示例:

select vend_id , prod_name
from Products
where vend_id != 'DLL01';

2.3 范围值检查

使用 between 运算符可以检索某个范围的值,它需要两个值表示一个范围。

示例:

select prod_name, prod_price
from Products
where prod_price between 5 and 10;

2.4 空值检查

示例:

select prod_name, prod_price
from Products
where prod_price is null;

3. 扩展

3.1 SQL过滤与应用过滤

数据也可以在应用层进行过滤,即 select 语句返回所有数据,客户端代码对返回数据进行筛选,提取出自己需要的行。但是应用过滤具有以下缺点:

3.2 引号的使用

当 where 字句筛选条件为 字符串时,需要用 引号限定字符串,用单引号和双引号都可以。而当筛选条件为数值时,不需要用引号。

3.3 NULL的特殊性

当我们通过 where 字句选择不包含指定值的行时,有时候我们希望返回 NULL 值的行,但是这不能实现。NULL 值比较特殊,进行匹配过滤和非匹配过滤时,都不会返回 NULL 值结果

到此这篇关于MySQL过滤数据操作方法梳理的文章就介绍到这了,更多相关MySQL过滤数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文