• 常用的谓词和逻辑运算符


    在我们写SQL查询的过程中,有几个使用得非常频繁的谓词和逻辑运算符,谓词主要有IN,BETWEEN,以及LIKE。逻辑运算符主要有OR和AND。下面来分别总结它们。

    IN

    IN一般用于判断一个值是否与一组元素中的至少一个相等。例如,以下SQL查询返回订单ID等于10248,或10249,或10250的订单。

    -- 设置数据库上下文
    USE TSQLFundamentals2008;
    GO
    
    SELECT orderid,empid,orderdate 
    FROM Sales.Orders
    WHERE orderid IN (10248,10249,10250);

    查询结果:

    image

    注意:若orderid为字符串类型的话,括号里的订单ID需要加引号。

    BETWEEN

    BETWEEN一般用于判断一个值是否在指定的范围内,包括两个指定的边界值。例如,以下查询返回订单ID在10300至10310之间的所有订单。

    SQL代码如下:

    -- 设置数据库上下文
    USE TSQLFundamentals2008;
    GO
    
    SELECT orderid,empid,orderdate 
    FROM Sales.Orders
    WHERE orderid BETWEEN 10300 AND 10310

    查询结果:

    image

    注意:表示日期时间的范围也可以使用BETWEEN。

    LIKE

    LIKE一般用于判断一个字符串值是否与指定的模式匹配。例如,以下查询返回姓氏以字符’D’开头的所有雇员。

    SQL查询代码:

    -- 设置数据库上下文
    USE TSQLFundamentals2008;
    GO
    
    SELECT empid,firstname,lastname 
    FROM HR.Employees
    WHERE lastname LIKE N'D%';

    查询结果:

    image

    下面来总结逻辑运算符了,逻辑运算符主要用于把多个逻辑表达式组合起来。

    OR

    OR运算符表示或的关系。例如,以下查询返回2008年1月1日以后由职员ID为1,2处理过的所有订单。

    SQL查询代码:

    -- 设置数据库上下文
    USE TSQLFundamentals2008;
    GO
    
    SELECT orderid,empid,orderdate 
    FROM Sales.Orders
    WHERE orderdate>='20080101' OR empid IN (1,2)

    查询结果:

    image

    AND

    AND表示且的关系。例如,以下查询返回2008年1月1日以后由职员ID为1,2处理过的所有订单。

    SQL查询代码:

    -- 设置数据库上下文
    USE TSQLFundamentals2008;
    GO
    
    SELECT orderid,empid,orderdate 
    FROM Sales.Orders
    WHERE orderdate>='20080101' AND empid IN (1,2)

    查询结果:

    image

  • 相关阅读:
    java中判断文件存在与否
    crontab安装以及定时任务的执行
    su命令学习
    linux中如何查看哪些用户允许登录
    linux中的压缩文件的格式
    R语言学习(瑞士军刀)
    linux下mysql导入导出sql文件
    创建线程池的7种方法
    docker运行tomcat
    Docker之镜像
  • 原文地址:https://www.cnblogs.com/mcgrady/p/3855292.html
Copyright © 2020-2023  润新知