OR运算符

6.2.2  OR运算符

OR运算符表示“或”的关系。当可能有多个条件为True,但只要有一个为True就满足搜索要求时,可以使用OR运算符来组合搜索条件。OR在结合两个布尔表达式时,只要其中一个条件为True时,便传回True。OR运算符的真值表如表6-3所示。

表6-3 OR真值表

   

   

    

True

True

True

True

False

True

True

NULL

True

False

False

False

False

NULL

NULL

NULL

NULL

NULL

注意 NULL与True进行OR运算时,结果为True而不是NULL。

语法如下:

SELECT  column
FROM   table_name
WHERE     condition1
OR         condition2

在WHERE子句中,通过OR运算符连接了两个查询条件condition1和condition2,只要其中一个条件为True,WHERE子句值就为True,DBMS会将当前记录包括在结果表中;如果WHERE子句求值为False或NULL,则DBMS排除该值。

实例3  使用OR运算符实现条件查询

从TEACHER表中查询计算机系和生物系的所有教师的姓名(TNAME)、系(DNAME)、工资(SAL)信息。实例代码:

SELECT  TNAME, DNAME, SAL
FROM   TEACHER
WHERE    DNAME='计算机'
OR   DNAME='生物'
ORDER BY     DNAME

运行结果如图6.3所示。

 
图6.3  计算机和生物系的教师

NULL与True进行OR运算时,结果为True。下面通过一个实例来说明。

实例4  NULL与True进行OR运算

从TEACHER表中查询工资(SAL)高于1500或者年龄小于45的教师的所有信息。实例代码:

SELECT  *
FROM   TEACHER
WHERE    SAL >1500
OR   AGE < 45
ORDER BY     SAL

运行结果如图6.4所示。

 
图6.4  年龄小于45或者工资大于1500的教师

从结果中,不难发现前两条记录的SAL列均为NULL。虽然判别式“SAL >1500”对这两条记录的计算结果为NULL,但是判别式“AGE < 45”的计算结果为True,因此再经过OR运算,最终WHERE子句结果为True。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值