数据库教程-Oracle Or子句

跨零代码为大家提供高品质的解决方案,请大家多多来访,跨零不胜感激,在此谢过。

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

Oracle OR运算符介绍

OR运算符是一个逻辑运算符,它组合了布尔表达式,如果其中一个表达式为真(true),则返回true

以下说明OR运算符的语法:

expression_1 AND expression_2 

下表显示了OR运算符在truefalseNULL值之间的结果。

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

我们经常在SELECTDELETEUPDATE语句的WHERE子句中使用OR运算符来形成过滤数据的条件。

如果在语句中使用多个逻辑运算符,则Oracle会在评估NOTAND运算符之后评估OR运算符。 但是,可以使用括号更改评估的顺序。

Oracle OR运算符的例子

我们将使用示例数据库中的orders表进行演示。表结构如下图所示 –

Oracle Or子句

1. Oracle OR运算符组合两个布尔表达式的例子

以下示例查找状态为挂起(Pending)或取消(Canceled)的订单,参考以下查询语句 –

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

在这个例子中,语句返回了满足下列表达式之一的所有订单:

status = 'Pending'  -- 或 status = 'Canceled' 

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

Oracle Or子句

2. Oracle OR运算符结合两个以上的布尔表达式的例子

我们经常使用OR运算符来组合两个以上的布尔表达式。 例如,以下语句检索负责以下销售员ID是60,6162的订单:

SELECT     order_id,      customer_id,      status,      salesman_id,     TO_CHAR(order_date, 'YYYY-MM-DD') AS order_date FROM     orders WHERE     salesman_id = 60      OR salesman_id = 61      OR salesman_id = 62 ORDER BY     order_date DESC; 

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

Oracle Or子句

可以使用IN运算符来代替使用多个OR运算符,如下例所示:

SELECT     order_id,     customer_id,     status,     salesman_id,     TO_CHAR(order_date, 'YYYY-MM-DD') AS order_date FROM     orders WHERE     salesman_id IN(60, 61, 62) ORDER BY     order_date DESC; 

该查询返回的结果与使用上面的OR运算符返回的结果相同。

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

可以将OR运算符与其他逻辑运算符(如ANDNOT)结合起来,形成一个条件。 例如,以下查询将返回属于客户ID为44并且已取消(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 Or子句

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

  

从零到一,创造未来!跨零综合IT问题解决服务站,欢迎你的到来。Oracle数据库教程 只为你绽放。

本文固定链接: http://kua0.com/2019/01/17/数据库教程-oracle-or子句/

为您推荐

发表评论

电子邮件地址不会被公开。 必填项已用*标注