`

hive union

    博客分类:
  • hive
阅读更多

原文:http://www.cnblogs.com/ggjucheng/archive/2013/01/15/2861574.html

Union 语法

select_statement UNION ALL select_statement UNION ALL select_statement ...

UNION用于联合多个SELECT语句的结果集,合并为一个独立的结果集。当前只能支持UNION ALL(bag union)。不消除重复行。每个select语句返回的列的数量和名字必须一样,否则,一个语法错误会被抛出。

 

如果必须对UNION的结果做一些额外的处理,整个语句可以被嵌入在FROM子句中,象下面这样

SELECT *
FROM (
 select_statement
   UNION ALL
 select_statement
) unionResult

 

例如,如果我们假设有两个不同的表来跟踪哪个用户发布视频哪个用户发表了评论,以下的查询结果,联合所有的用户表,为用户所有视频发布和评论发布事件,创建一个单一的注释流。

复制代码
SELECT u.id, actions.date
FROM (
 SELECT av.uid AS uid  FROM action_video av  WHERE av.date = '2008-06-03' 
  UNION ALL 
 SELECT ac.uid AS uid  FROM action_comment ac  WHERE ac.date = '2008-06-03' 
) actions 
JOIN users u ON (u.id = actions.uid)
分享到:
评论

相关推荐

    spark或mr引擎插入的数据,hive表查询数据为0

    问题的根本原因在于数据写入过程中生成了一个额外的子目录`HIVE_UNION_SUBDIR_1`(或类似的命名),这是由于Tez引擎在执行`UNION ALL`操作时的一个特性所致。当使用`UNION ALL`操作时,Tez引擎会在原始分区目录下...

    hive on tez 常见报错问题收集

    Hive on Tez在处理insert语句与union all结合时,会进行优化,这可能导致在MR引擎中查询结果为空。解决方法包括: - 避免使用union all生成结果表,改用其他查询方式。 - 设置`mapred.input.dir.recursive`为true...

    Hive优化方法整理

    2. 解决方法 1:user_id 为空的不参与关联,使用 union all 语句将两个结果合并。 3. 解决方法 2:赋与空值分新的 key 值,使用 left outer join 语句进行关联。 处理不同数据类型关联产生的数据倾斜 1. 对于用户...

    Hive使用手册Hive使用手册

    在大数据处理领域,Apache Hive 是一个非常重要的工具,它提供了SQL-like的语言(HQL)用于对存储在Hadoop上的大规模数据进行查询和分析。本手册将深入探讨Hive的概念、数据类型、表的操作以及优化技巧。 1. **Hive...

    hive数仓、hive SQL 、 hive自定义函数 、hive参数深入浅出

    - 高级查询:支持JOIN、子查询、窗口函数、聚合函数、集合操作(UNION、INTERSECT、EXCEPT)等。 - 表达式与函数:内置函数包括数学、字符串、日期时间等多种类型,同时支持用户自定义函数(UDF)。 3. Hive...

    Hive教程.pdf

    ### Hive简明教程知识点概述 #### 一、Hive简介 - **定义**: Hive是一种基于Hadoop的数据仓库工具,它可以将结构化的数据文件映射成一张数据库表,并提供类SQL查询功能,使得Hadoop能够更好地处理大数据。 - **...

    spark-hive_2.11-2.1.3-SNAPSHOT.jar

    spark-hive_2.11-2.1.3-SNAPSHOT.jar

    presto和hive的使用区别

    Hive是把一个查询转化成多个MapReduce任务,然后一个接一个执行。执行的中间结果通过对磁盘的读写来同步。然而,Presto没有使用MapReduce,它是通过一个定制的查询和执行引擎来完成的。它的所有的查询处理是在内存中...

    大数据-hive性能优化

    此外,利用Hive对UNION ALL的优化特性,可以减少不必要的分组操作,提升查询效率。 综上所述,Hive性能优化是一个涉及模型设计、数据处理策略、算法调整和业务理解的多维度任务。通过上述优化措施,可以显著提升...

    Hive函数大全.pdf

    `UNION ALL`、`INTERSECT`、`EXCEPT`等操作可以合并或对比多个查询的结果集。 Hive的这些函数极大地丰富了其查询和分析能力,使得开发者能更灵活地处理大数据。在实际使用中,结合HQL(Hive Query Language)的其他...

    《企业级Hive实战课程》大纲

    - 常见SQL语句如SELECT、WHERE、DISTINCT、JOIN、GROUP BY、UNION等的使用; - 复杂查询如CASE WHEN THEN、IN/NOT IN/EXISTS/NOT EXISTS等的操作; - 排序操作(ORDER BY、SORT BY、DISTRIBUTE BY、CLUSTER BY)...

    Hive优化.docx

    - **利用Hive对UNION ALL的优化**:Hive优化非嵌套的UNION ALL查询,但嵌套查询不受此优化影响。 5. **Hadoop通用关联实现**: - **关联通过二次排序实现**:关联列作为分区键,关联列和其他列组合形成排序的组键...

    hive 简明教程

    - 复杂数据类型:如ARRAY、MAP、STRUCT、UNION等。 Hive提供了DDL(数据定义语言)来定义数据结构,包括创建数据库、表、视图等。通过DDL可以进行表的创建、删除、分区操作等。 数据定义语言-DDL包括: - 创建...

    工作总结hive优化

    Hive对`UNION ALL`操作进行了优化,但对于嵌套查询则不一定有效。因此,在编写SQL时应尽可能避免不必要的嵌套操作,以提高查询效率。 ### 结论 通过对Hive及其底层Hadoop的理解,结合实际案例分析,我们可以看到...

    hive 20160130

    - 特有的概念如分区、桶(Bucketing)、倾斜(Skewness)和联合(Union)。 - 使用JOIN、LEFT JOIN、RIGHT JOIN、FULL JOIN等操作处理多表数据。 - 支持UDF(用户定义函数),包括UDAF(用户定义聚合函数)和UDTF...

    java大数据内容_6Hive、Kettle

    Hive的数据类型包括基本类型(如TINYINT、STRING、TIMESTAMP)和复合类型(如ARRAY、MAP、STRUCT和UNIONTYPE)。数据存储基于HDFS,支持多种文件格式,如TextFile和SequenceFile。 **Kettle简介** Kettle是一款强大...

    Hive语法详解.docx (排版清晰,覆盖全面,含目录)

    ### Hive语法详解 #### 一、安装和配置 **1.1 要求** - **硬件需求**:为了高效地运行Hive,推荐至少具备4GB内存,并且Hive服务器应该有足够的磁盘空间来存储元数据。 - **软件需求**:Hive需要Java环境支持,...

    cdh5-6-Hive版本之间不兼容特性

    在CDH5到CDH6的升级过程中,Hive用户需要注意一些重要的不兼容特性,特别是与`UNION ALL`操作和表格式更改相关的方面。这些差异可能会对查询结果和数据完整性造成影响,因此在进行升级时应谨慎处理。 首先,CDH6...

    hive实现原理

    - **UnionOperator**:用于实现 UNION 语句。 #### 七、总结 通过以上分析可以看出,Hive 作为一款高效的数据仓库工具,在处理大规模数据时具有很高的灵活性和强大的功能。掌握其内部实现机制不仅有助于优化查询...

Global site tag (gtag.js) - Google Analytics