Oracle之替代OR的另一种方法

简介: Oracle之替代OR的另一种方法

今日份知识学习

今日份知识学习,依然是从一个问题出发,这个问题就是有没有一种方式可以替代OR,因为OR的增多,使得SQL比较复杂,如果有一种方法可以替代OR的话,那岂不是很好。

具体讲解

从这个问题而言,其实是有的,替代OR的一种方式,那就是使用UNION。

UNION关键字

UNION是将多个结果集进行拼接,比如下面这个SQL的写法。

select name, age from user_table where name = '张三' union select name, age from user_table where name = '张四';

上述SQL就可以将条件为张三,和条件为张四的数据查出来了,当然我们使用Or也是可以查出来的。

比如使用or的SQL如下:

select name, age from user_table where name = '张三' OR name = '张四';

使用Or也是可以查出来的,使用Union就是另一种方式。

UNION ALL

除了UNION之外,还有UNION ALL关键字需要介绍一下,从名称来看,就知道是UNION ALL是在UNION基础上增加的功能。

UNION ALL实际上是不再去重,UNION会将多个结果集去重之后合并,UNION ALL则不同,直接将多个结果集合并,并且不进行去重。

比如以下的SQL中:

select name from user_table where name = '张三' union select name from user_table where name = '张三';

上面的SQL输出的就只有张三一条记录。

那如果我们换成UNION ALL的话,如下代码所示:

select name from user_table where name = '张三' union all select name from user_table where name = '张三';

这样的话,我们就可以得到两条张三的结果记录。

总结

今天学了替换OR的另外一种方法,那就是UNION关键字,更深入了解一下UNION和UNION ALL两个关键字的使用,你是否学会了呢?

最近开始来学习Oracle数据库的一些知识,其中包含一些函数的使用,或者是特性的介绍讲解等,将会在系列文章内说到。

喜欢的可以关注一下专栏。

目录
相关文章
|
5月前
|
Oracle 关系型数据库
Oracle新建数据表的两种方法
Oracle新建数据表的两种方法
|
7月前
|
存储 Oracle Java
[亲测可用]hibernate调用Oracle存储过程|Spring Data JPA调用Oracle存储过程方法
[亲测可用]hibernate调用Oracle存储过程|Spring Data JPA调用Oracle存储过程方法
|
7月前
|
SQL Oracle 关系型数据库
Oracle数据库优化的总结及优化方法
Oracle数据库优化的总结及优化方法
56 0
|
10月前
|
SQL Oracle 关系型数据库
一种SqlServer数据迁移到Oracle的方法总结
一种SqlServer数据迁移到Oracle的方法总结
377 0
|
10月前
|
存储 SQL Oracle
Oracle 存储过程和方法全攻略:实战详解调用技巧与注意事项
Oracle 存储过程和方法全攻略:实战详解调用技巧与注意事项
384 0
|
10月前
|
存储 Oracle 关系型数据库
|
Oracle 关系型数据库 MySQL
mybatis执行批量更新batch update 的方法(oracle,mysql)
mybatis执行批量更新batch update 的方法(oracle,mysql)
1123 0
|
SQL Oracle 关系型数据库
Oracle文本数据导出方法总结
Oracle文本数据导出方法总结
680 0
oracle+hibernate 时间段内查询的方法:
oracle+hibernate 时间段内查询的方法:
107 0