Oracle And子句

在本教程中,将学习如何使用Oracle AND运算符来组合两个或更多的布尔表达式。

Oracle AND运算符介绍

AND运算符是一个逻辑运算符,它组合了布尔表达式,如果两个表达式都为真,则返回true。 如果其中一个表达式为假,则AND运算符返回false

AND运算符的语法如下所示:

expression_1 AND expression_2

下表说明了使用AND运算符合并truefalseNULL值时的结果 -

TRUE FALSE NULL
TRUE TRUE FALSE NULL
FALSE FALSE FALSE FALSE
NULL NULL FALSE NULL

通常,在SELECTDELETEUPDATE语句的WHERE子句中使用AND来形成匹配数据的条件。 另外,在JOIN子句的谓词中使用AND运算符来形成连接条件。

在声明中使用多个逻辑运算符时,Oracle始终首先评估AND运算符。 但是,可以使用括号来更改评估的顺序。

Oracle AND算符的例子

请参阅示例数据库中的以下订单(orders)表:

1. Oracle AND结合两个布尔表达式的例子

以下示例查找具有客户编号为2的那些状态为挂起(Pending)的订单:

SELECT order_id, customer_id, status, TO_CHAR(order_date,‘YYYY-MM-DD‘) AS order_date
FROM orders
WHERE  status = ‘Pending‘  AND customer_id = 2
ORDER BY order_date;

在这个例子中,查询返回了满足两个表达式的所有订单信息,即:

status = ‘Pending‘

customer_id = 2

执行上面查询语句,得到以下结果:

2. Oracle AND结合两个以上的布尔表达式的例子

可以使用多个AND运算符来组合布尔表达式。

例如,以下语句检索满足以下所有条件的订单:

  • 2017年放置。
  • 负责售货员编号为60
  • 有发货状态。

参考以下查询语句 -

SELECT
    order_id,
    customer_id,
    status,
    TO_CHAR(order_date, ‘YYYY-MM-DD‘) AS order_date
FROM
    orders
WHERE
    status = ‘Shipped‘
    AND salesman_id = 60
    AND EXTRACT(YEAR FROM order_date) = 2017
ORDER BY
    order_date;

执行上面查询语句,得到以下结果 -

3. Oracle AND与OR运算符结合示例

可以将AND运算符与其他逻辑运算符(如ORNOT)组合,以形成一个条件。

例如,以下查询查找客户ID44的订单,并且状态已取消(Canceled)待定(Pending)。参考以下实现语句 -

SELECT
    order_id,
    customer_id,
    status,
    salesman_id,
    TO_CHAR(order_date, ‘YYYY-MM-DD‘) AS order_date
FROM
    orders
WHERE
    (status = ‘Canceled‘ OR status = ‘Pending‘)
    AND customer_id = 44
ORDER BY
    order_date;

执行上面查询语句,得到以下结果 -

在本教程中,我们已学习如何使用Oracle AND运算符来组合两个或更多的布尔表达式。

原文地址:https://www.cnblogs.com/youseiraws/p/8600669.html

时间: 2024-11-12 20:46:13

Oracle And子句的相关文章

Oracle In子句

Oracle In子句 作者:初生不惑 Oracle基础 评论:0 条 Oracle技术QQ群:175248146 在本教程中,您将学习如何使用Oracle IN运算符来确定值是否与列表或子查询中的任何值相匹配. Oracle IN操作符介绍 Oracle IN运算符确定值是否匹配列表或子查询中的任何值. 注:子查询是嵌套在另一个查询中的查询,可通过在子查询教程中了解子查询用法. 确定表达式是否与值列表匹配的Oracle IN运算符的语法如下所示: expression [NOT] IN (v1

Oracle Distinct子句

在本教程中,将学习如何使用Oracle SELECT DISTINCT语句从表中查询不同的数据. Oracle SELECT DISTINCT语句简介 在SELECT语句中使用DISTINCT子句来过滤结果集中的重复行.它确保在SELECT子句中返回指定的一列或多列的值是唯一的. 以下说明了SELECT DISTINCT语句的语法: SELECT DISTINCT column_1 FROM table_name; 在上面语法中,table_name表的column_1列中的值将进行比较以过滤重

Oracle Or子句

在本教程中,我们来学习如何使用Oracle OR运算符来组合两个或更多的布尔表达式. Oracle OR运算符介绍 OR运算符是一个逻辑运算符,它组合了布尔表达式,如果其中一个表达式为真(true),则返回true. 以下说明OR运算符的语法: expression_1 AND expression_2 下表显示了OR运算符在true,false和NULL值之间的结果. 值 TRUE FALSE NULL TRUE TRUE TRUE TRUE FALSE TRUE FALSE NULL NUL

Oracle Like子句

在本教程中,您将学习如何使用Oracle LIKE运算符来测试列中的值是否与指定的模式匹配. Oracle LIKE运算符介绍 有时候,想根据指定的模式来查询数据. 例如,您可能希望查找姓氏以St开头或姓氏以er结尾的联系人.在这种情况下,可使用Oracle LIKE运算符. Oracle LIKE运算符的语法如下所示: expresion [NOT] LIKE pattern [ ESCAPE escape_characters ] 在上面的语法中, expression - 该表达式是一个列

Oracle HAVING子句 - 转

使用 HAVING 子句选择行 HAVING 子句对 GROUP BY 子句设置条件的方式与 WHERE 子句和 SELECT 语句交互的方式类似.WHERE 子句搜索条件在进行分组操作之前应用:而 HAVING 搜索条件在进行分组操作之后应用.HAVING 语法与 WHERE 语法类似,但 HAVING 可以包含聚合函数.HAVING 子句可以引用选择列表中出现的任意项. 下面的查询得到本年度截止到目前的销售额超过 $40,000 的出版商: USE pubs SELECT pub_id, t

数据库与SQL语言<4>

s数据库面试主要包含范式.事务.存储过程.SQL语言,以及索引等诸多方面. 1.数据库理论 第一范式:关系模式R的所有属性的值域中每一个值都是不可再分解的值,则称R属于第一范式. 第二范式:如果关系型数据库属于第一范式,并且R中每一个非主属性完全函数依赖于R的某个候选键,则称第二范式. 第三范式:如果关系型数据库是第二范式,且每个非主属性每个非主属性都不传递依赖于R的候选键,则称R的第三范式. BC范式:关系模式属于第一范式,且每个属性都不传递依赖于R的候选键. 第四范式:R是一个关系模式,D是

Sql- Group By ,Where,having用法

Group by,where,having 是数据库查询中最常用的几个关键字.在工作中,时常用到,前面遇到一个问题,一个查询中使用了where ,group by ,having及聚集函数时 ,执行顺序是怎么样的?为了回答这个问题,将这个三个关键字的用法整理一下. Where:数据库中常用的是Where关键字,用于在初始表中筛选查询.如下面这个例子,从user表中查询出userDepartmentId等于2的数据 Select * from dbo.user where userDepartme

sql中的group by 和 having 用法解析

--sql中的group by 用法解析:-- Group By语句从英文的字面意义上理解就是“根据(by)一定的规则进行分组(Group)”.--它的作用是通过一定的规则将一个数据集划分成若干个小的区域,然后针对若干个小区域进行数据处理.--注意:group by 是先排序后分组:--举例子说明:如果要用到group by 一般用到的就是“每这个字” 例如说明现在有一个这样的表:每个部门有多少人 就要用到分组的技术select DepartmentID as '部门名称',COUNT(*) a

sql的 select

select *(列名) from table_name(表名) where column_name operator value . select * from stock_information where stockid = str(nid) sql中的通配符:   通配符 描述 % 匹配零个及多个任意字符 _ 仅替代一个字符 [charlist] 字符列中的任何单一字符 [^charlist]  或者       [!charlist] 不在字符列中的任何单一字符 只能在使用 like