union和union all函数的使用

在开发中,有些数据的存储可能涉及到分库分表,查询的时候,可能需要查询所有的分表,这个时候,就需要用到UNION或者UNION ALL。


1.union的使用:

UNION操作符用于合并两个或多个SELECT语句的结果集。

使用注意事项:

  1. UNION内部的SELECT语句必须拥有相同数量的列,列也必须拥有相似的数据类型。
  2. 每条SELECT语句中列的顺序必须相同。

SELECT ID,name FROM emp1
UNION
SELECT ID,name FROM emp2


2.union all的使用:

union操作符合并的结果集,不会允许重复值,如果允许有重复值的话,使用UNION ALL.
使用注意事项:

  1. UNION内部的SELECT语句必须拥有相同数量的列,列也必须拥有相似的数据类型。
  2. 每条SELECT语句中列的顺序必须相同。

select (LTRIM(substr(month_tab.month, 5, 2), ‘0’)) || ‘月’ month from(
select to_char(ADD_MONTHS(trunc(sysdate), -6), ‘yyyymm’) month from dual
UNION all
select to_char(ADD_MONTHS(trunc(sysdate), -5),‘yyyymm’) month from dual > > UNION all
select to_char(ADD_MONTHS(trunc(sysdate), -4), ‘yyyymm’) month from dual
UNION all
select to_char(ADD_MONTHS(trunc(sysdate), -3), ‘yyyymm’) month from dual > > UNION all
select to_char(ADD_MONTHS(trunc(sysdate), -2), ‘yyyymm’) month from dual > > UNION all
select to_char(ADD_MONTHS(trunc(sysdate), -1), ‘yyyymm’) month from dual )
month_tab) t

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐