SQL必知会(二)-SQL查询篇(3)-过滤数据

第4课、过滤数据

WHERE:过滤条件
使用 WHERE 子句 指定搜索条件进行过滤。

WHERE 子句操作符

表4-1 WHERE 子句操作符

操作符 说明 操作符 说明
= 等于 > 大于
< > 不等于 >= 大于等于
!= 不等于 !> 不大于
< 小于 BETWEEN 在指定的两个值之间
<= 小于等于 IS NULL 为 NULL 值
!< 不小于
1)按指定列的值进行过滤

需求:只返回 prod_price 值为 3.49 的行

SELECT prod_name,prod_price
FROM Products
WHERE prod_price = 3.49;
-- 只返回 prod_price 值为 3.49 的行

输出结果:

SQL必知会(二)-SQL查询篇(3)-过滤数据_第1张图片

提示:SQL 过滤与应用过滤(考试可能会问)

应用过滤:假定在 SQL 执行:
1)SELECT prod_name,prod_price FROM Products;
2)然后再在客户端应用的逻辑里对SQL 查询获得的数据,进行判断过滤条件,则输出最终结果。
缺点:
1.如果从服务端查询到的实际数据远远大于所需的数据,会大大浪费网络的宽带。
2.客户端应用处理的逻辑复杂,具备不可伸缩性。
2)检查单个值

需求:列出所有价格小于10 美元的产品

SELECT prod_name,prod_price
FROM Products
WHERE prod_price < 10;

输出结果:

SQL必知会(二)-SQL查询篇(3)-过滤数据_第2张图片

3)不匹配检查

需求:列出所有不是供应商 DLL01 制造的产品。

SELECT vend_id,prod_name
FROM Products
WHERE vend_id <> 'DLL01';
-- 值为字符串,则使用引号。如果是数值,则不需要

输出结果:

SQL必知会(二)-SQL查询篇(3)-过滤数据_第3张图片

4)范围值检查
检查某个范围值,使用 BETWEEN 操作符。

需求:检索价格在5美元和10美元之间的所有产品。

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

输出结果:

SQL必知会(二)-SQL查询篇(3)-过滤数据_第4张图片

5)空值检查

需求:检索所有没有价格的产品。

SELECT prod_name
FROM Products
WHERE prod_price IS NULL;

输出结果:

SQL必知会(二)-SQL查询篇(3)-过滤数据_第5张图片

总结

WHERE:过滤条件

SELECT 列1,列2
FROM 表
WHERE 过滤条件;

你可能感兴趣的:(数据库,sql,数据库)