zoukankan      html  css  js  c++  java
  • T-SQL:毕业生出门需知系列(四)

    第4课 过滤数据

     

    4.1 使用 WHERE 子句:过滤

      只检索所需数据需要指定搜索条件(即过滤条件)。

      WHERE 子句在表名(FROM 子句)后给出,根据 WHERE 子句中指定的条件过滤。

    SELECT prod_name, prod_price
    FROM Products
    WHERE prod_price = 3.49;
    --    分析:从 Products 表中检索两个列,只返回 prod_price 值为 3.49 的行

      【提示】SQL 过滤与应用过滤:

        数据也可以在应用层过滤。但是在优化数据库后可以更快速地对数据进行过滤,如果让客户端应用(或开发语言)处理数据库的工作将会极大地影响应用的性能,并且使所创建的应用完全不具备可伸缩性。此外,也可能会导致网络带宽的浪费。

      【注意】WHERE 子句的位置:

        在同时使用 ORDER BY 和 WHERE 子句时,ORDER BY 要位于 WHERE 之后。

     

    4.2 WHERE 子句操作符

    --    =====表4-1 WHERE子句操作符=====
    --    操作符    说明            操作符    说明
    --    =        等于            >        大于
    --    <>        不等于        >=        大于等于
    --    !=        不等于        !>        不大于
    --    <        小于            BETWEEN    在指定的两个值之间
    --    <=        小于等于        IS NULL    为NULL值
    --    !<        不小于

    4.2.1 检查单个值

      列出所有价格小于 10 美元的商品:

    SELECT prod_name, prod_price
    FROM Products
    WHERE prod_price < 10;

      

      检索所有价格小于等于 10 美元的产品:(结果同上图)

    SELECT prod_name, prod_price
    FROM Products
    WHERE prod_price <= 10;

    4.2.2 不匹配检查

      列出所有不是供应商 DLL01 制造的产品

    SELECT vend_id, prod_name
    FROM Products
    WHERE vend_id <> 'DLL01';
    --    第二种写法
    SELECT vend_id, prod_name
    FROM Products
    WHERE vend_id != 'DLL01';

    4.2.3 范围值检查(BETWEEN)

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

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

    4.2.4 空值检查(NULL)

      在一个列不包含值时,称其包含空值 NULL

      NULL:无值,与字段包含0、空字符串或仅仅包含空格不同

      【注意】确定值是否为 NULL,不能简单地检查是否 =NULL,应该使用 IS NULL

      检索没有电子邮件的顾客:

    SELECT cust_name, cust_email
    FROM Customers
    WHERE cust_email IS NULL

    4.3 小结

    • 使用 WHERE 过滤数据
    • 学习检验相等、不等、大于、小于、值的范围及 NULL 值等

    续集:

      SQLServer:《SQL必知必会》一书的读书笔记(三)

      SQLServer:《SQL必知必会》一书的读书笔记(五)

  • 相关阅读:
    解决Mac笔记本电脑自带录屏软件没有声音问题
    pip安装包后Import的时候提示找不到的解决方案
    Photoshop怎么给图片添加简介信息或者版权信息
    [2021/08/06]Ubuntu20 安装指定小版本Mysql(本文示例mysql8.0.18)
    Springboot2.3.5 实现JWT授权验证并针对不同用户实现多个拦截器
    搭建集群步骤注意事项
    docker服务程序网络排查
    网络分层协议集合分析
    括号串
    抢救实验数据
  • 原文地址:https://www.cnblogs.com/liqingwen/p/4656388.html
Copyright © 2011-2022 走看看