• SQL必知必会-05


    高级数据过滤

    组合where子句

    SQL允许多个where子句,可以是使用and关键字或or关键字进行连接。

    and操作符

    eg:select prod_id, pro_price, prod_name from products where vend_id = 'dll01' and prod_price <= 4;

    and 用来指示检索满足所有给定条件的行。

    or操作符

    or操作符与and操作符相反,检索满足其中一个条件的行。

    eg: select prod_name, prod_price from products where vend_id = 'dll01' or vend_id = 'brs01';

    求值顺序

    where子句可以包含任意数量的and和or操作符,允许两者结合使用。但是它们会有一个求值顺序。

    SQL在处理or操作符前,会优先处理and操作符。如果需要优先处理or则可以使用括号括起来。(多使用括号来进行语义的分割)

    eg:select prod_name, prod_price from products where (vend_id = 'dll01' or vend_id = 'brs01')and prod_price >= 10;

    in操作符

    in操作符用来指定条件范围,范围中的每个条件都可以进行匹配。

    eg:select pro_name, prod_price from Products where vend_id in ('dll01', 'drs01');   检索vend_id的值为'dll01', 'drs01'的行。

    in操作符和or操作符很相像。

    in操作符的好处:

      1、in操作符的语法更清楚,更直观。

      2、相对于and、or操作符,in的求值顺序更容易管理。

      3、in操作符比一组or操作符执行更快

      4、in操作符可以包含其他select语句,能够动态的构建where子句。

    not操作符

    where子句中not操作符有且只有一个功能,就是否定其后的条件。

  • 相关阅读:
    spring框架学习笔记(七)
    spring框架学习笔记(六)
    spring框架学习笔记(五)
    spring框架学习笔记(四)
    spring框架学习笔记(三)
    leetcode 147. Insertion Sort List ----- java
    leetcode 146. LRU Cache ----- java
    leetcode 145. Binary Tree Postorder Traversal ----- java
    leetcode 144. Binary Tree Preorder Traversal ----- java
    leetcode 143. Reorder List ----- java
  • 原文地址:https://www.cnblogs.com/sunshine-2018/p/11423024.html
Copyright © 2020-2023  润新知