`

HIVE 第五章 查询

阅读更多

 

查询语句

查询的一些例子:

1.query

hive> SELECT name, subordinates[0] FROM employees;

John Doe Mary Smith

Mary Smith Bill King

Todd Jones NULL

 

2.expression

hive> SELECT upper(name), salary, deductions["Federal Taxes"],

round(salary * (1 - deductions["Federal Taxes"])) FROM employees;

 

3.expression

SELECT count(*), avg(salary) FROM employees;

 

4.distinct

SELECT count(DISTINCT symbol) FROM stocks;

 

5.limit

hive> SELECT upper(name), salary, deductions["Federal Taxes"],

> round(salary * (1 - deductions["Federal Taxes"])) FROM employees

> LIMIT 2;

JOHN DOE 100000.0 0.2 80000

MARY SMITH 80000.0 0.2 64000

 

6.列名 别名

SELECT upper(name), salary, deductions["Federal Taxes"] as fed_taxes,

> round(salary * (1 - deductions["Federal Taxes"])) as 

 

salary_minus_fed_taxes

> FROM employees LIMIT 2;

 

7.嵌套select (不可有having在内部select)

hive> FROM (

> SELECT upper(name), salary, deductions["Federal Taxes"] as fed_taxes,

> round(salary * (1 - deductions["Federal Taxes"])) as 

 

salary_minus_fed_taxes

> FROM employees

> ) e

> SELECT e.name, e.salary_minus_fed_taxes

> WHERE e.salary_minus_fed_taxes > 70000;

JOHN DOE 100000.0 0.2 80000

 

8. case when then

hive> SELECT name, salary,

> CASE

> WHEN salary < 50000.0 THEN 'low'

> WHEN salary >= 50000.0 AND salary < 70000.0 THEN 'middle'

> WHEN salary >= 70000.0 AND salary < 100000.0 THEN 'high'

> ELSE 'very high'

> END AS bracket FROM employees;

John Doe 100000.0 very high

Mary Smith 80000.0 high

Todd Jones 70000.0 high

Bill King 60000.0 middle

Boss Man 200000.0 very high

 

9.hive不适用map reduce

  SELECT * FROM employees;

  SELECT * FROM employees

WHERE country = 'US' AND state = 'CA'

LIMIT 100;

 

10.使用like和rlick

like是如同sql语句

hive> SELECT name, address.street FROM employees WHERE address.street LIKE 

 

'%Chi%';

rlick可以使用如同java的正则

hive> SELECT name, address.street

> FROM employees WHERE address.street RLIKE '.*(Chicago|Ontario).*';

Mary Smith 100 Ontario St.

Todd Jones 200 Chicago Ave.

 

11 group by语句

hive> SELECT year(ymd), avg(price_close) FROM stocks

> WHERE exchange = 'NASDAQ' AND symbol = 'AAPL'

> GROUP BY year(ymd);

1984 25.578625440597534

 

12 having语句

hive> SELECT year(ymd), avg(price_close) FROM stocks

> WHERE exchange = 'NASDAQ' AND symbol = 'AAPL'

> GROUP BY year(ymd)

> HAVING avg(price_close) > 50.0;

1987 53.88968399108163

1991 52.49553383386182

 

13 join inner(建议将最大的table放在最后)

hive> SELECT a.ymd, a.price_close, b.price_close

> FROM stocks a JOIN stocks b ON a.ymd = b.ymd

> WHERE a.symbol = 'AAPL' AND b.symbol = 'IBM';

(注意,像比较这样的join条件是不允许的,条件中也不能用or)

SELECT a.ymd, a.price_close, b.price_close

FROM stocks a JOIN stocks b

ON a.ymd <= b.ymd

WHERE a.symbol = 'AAPL' AND b.symbol = 'IBM';

 

14.left outer join

hive> SELECT s.ymd, s.symbol, s.price_close, d.dividend

> FROM stocks s LEFT OUTER JOIN dividends d ON s.ymd = d.ymd AND s.symbol = 

 

d.symbol

> WHERE s.symbol = 'AAPL';

...

1987-05-01 AAPL 80.0 NULL

1987-05-04 AAPL 79.75 NULL

1987-05-05 AAPL 80.25 NULL

 

分享到:
评论

相关推荐

    《Hive数据仓库案例教程》教学课件 第5章 Hive数据操作.pdf

    《Hive数据仓库案例教程》教学课件 第5章 Hive数据操作.pdf《Hive数据仓库案例教程》教学课件 第5章 Hive数据操作.pdf《Hive数据仓库案例教程》教学课件 第5章 Hive数据操作.pdf《Hive数据仓库案例教程》教学课件 第...

    Hive编程指南中文版

    第5章 HiveQL:数据操作 第6章 HiveQL:查询 第7章 HiveQL:视图 第8章 HiveQL:索引 第9章 模式设计 第10章 调优 第11章 其他文件格式和压缩方法 第12章 开发 第13章 函数 第14章 Streaming 第15章 自定义Hive文件...

    第6章:Hive性能优化及Hive3新特性1

    Hive3引入了LLAP(Live Long and Process)模式,实现查询结果缓存,提高交互式查询性能;独立的Metastore服务提高了元数据管理的稳定性和可扩展性。 总结来说,Hive性能优化涉及多个层面,包括表结构设计、数据...

    第12章 Hive1

    总结,Hive作为Hadoop生态的重要组成部分,主要为大数据分析提供SQL查询能力,通过SQL与Hadoop集群交互,适用于处理和分析大规模分布式数据。尽管执行效率不如专门的实时查询引擎,但其易于使用和强大的SQL支持使其...

    《Hive数据仓库案例教程》教学大纲.pdf

    7. **Hive函数**:本章涉及Hive内置函数的使用,如统计函数、日期函数、字符串函数等,使用户能编写复杂的查询语句。 8. **Hive数据压缩**:讨论Hive如何进行数据压缩,提高存储效率和查询性能,理解各种压缩算法在...

    hive的安装与配置头歌.zip

    5. **启动 Hive**:启动 Hive 服务,可以使用命令 `hive --service metastore` 启动 Metastore 服务,然后使用 `hive` 命令进入 Hive 命令行。 6. **创建表并加载数据**:在 Hive 命令行中,可以创建 Hive 表,定义...

    hive词法语法分析草稿0.3

    语义分析阶段,即第五章,是理解Hive查询逻辑的关键。这部分会讨论语义处理模块之间的关系,例如如何处理表别名、函数调用、类型检查等。模板方法模式被用于提供一种可扩展的框架,使得不同的处理模块可以按需重写...

    Hive3第六章:更换引擎

    3. **验证设置**:配置完成后,可以通过运行简单的Hive查询来验证引擎是否成功切换。如果Hive查询日志显示Spark相关的信息,那么就表明已经成功切换到了Spark引擎。 使用Spark引擎有以下几点显著优势: 1. **内存...

    第5章:Hive函数重要应用案例1

    【Hive函数重要应用案例1】本章主要探讨在Hive中处理特殊数据格式的技巧,特别是涉及多字节分隔符和字段内包含分隔符的问题。在Hive中,通常使用单字节分隔符(如逗号、制表符)来加载文本数据,但在实际场景中,...

    第8章基于Hadoop的数据仓库Hive作业.pptx

    5.Hive的数据处理 Hive的数据处理是指对大量数据的处理和分析。Hive提供了各种数据处理机制,包括数据清洁、数据转换、数据聚合等。 6.Hive的优化技术 Hive的优化技术是指对Hive的查询性能的优化。Hive提供了各种...

    2021年-Hive大数据仓库-期末考试知识点重点-笔记整理.pdf

    Hive是一种基于Hadoop的大数据仓库工具,可以将结构化的数据文件映射为一个表,并提供类SQL查询功能。Hive的优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计。延迟较高,使得Hive适合用于离线的...

    第6章 Hive组件安装配置.pptx

    5. **启动Hive**:启动Hive服务,如`hive`命令行工具,即可开始使用Hive进行数据操作。 了解和熟练掌握Hive的安装配置、基本知识和架构,对于大数据分析师和数据工程师来说至关重要,它能够有效地提升大数据分析的...

    第6章 Hive组建安装配置.docx

    Hive 组件安装配置 ...五、实验总结 通过本实验,您已经完成了 Hive 组件的安装和配置,掌握了 Hive 组件的格式化和启动过程。在后续实验中,您将学习如何使用 Hive 进行数据仓库管理和数据分析。

    【63课时完整版】大数据实践HIVE详解及实战

    第5章:Zeus任务资源调度工具 54.资源任务调度框架介绍 55.企业中常见的任务调度框架 56.Zeus的介绍及基本实现原理 57.Zeus安装部署-基本环境配置 58.Zeus安装部署-配置文件的修改 59.Zeus安装部署-编译打包 60.Zeus...

    高级软件人才培训专家-Hadoop课程资料-4-第四章 - 分布式SQL计算 Hive 入门

    ### 高级软件人才培训专家-Hadoop课程资料-4-第四章 - 分布式SQL计算 Hive 入门 #### Apache Hive 概述 Apache Hive 是一款面向大数据处理的分布式 SQL 计算工具,旨在简化 Hadoop 生态系统中的数据查询与分析流程...

    第6章 Hive组建安装配置.pdf

    5. 实验总结 通过本实验,您已经学习了如何安装和配置 Hive 组件,掌握了 Hive 组件的安装配置和格式化和启动。 Hive 是基于 Hadoop 的数据仓库工具,用于对大规模数据进行处理和分析。掌握 Hive 组件的安装配置和...

    第4章 Hive参数配置与函数、运算符使用1

    5. **Hive函数与运算符** Hive支持多种内置函数和运算符,用于数据处理和分析。例如: - **聚合函数**:COUNT(), SUM(), AVG(), MAX(), MIN()等用于对数据进行统计计算。 - **字符串函数**:LENGTH(), SUBSTRING...

    高级软件人才培训专家-Hadoop课程资料-5-第五章 - 分布式SQL计算 Hive 语法与概念

    ### 高级软件人才培训专家-Hadoop课程资料-5-第五章 - 分布式SQL计算 Hive 语法与概念 #### 知识点概览 本章节主要围绕分布式SQL计算工具——Hive进行深入讲解,包括Hive的基本概念、语法结构以及如何通过Hive对...

    Play Hive Like a Champion

    #### 第五章:Hive棋中的战略思维 ##### 5.1 三大制胜关键 - **保护皇后蜂**:确保其安全。 - **攻击与防守平衡**:既要积极进攻也要稳固防守。 - **合理布局**:利用虫子特性构建有利阵型。 ##### 5.2 进攻还是...

    Apache Hive Essentials

    第5章讨论数据操作,包括数据交换的 LOAD 和 INSERT 操作,ORDER BY 和 SORT 的使用,以及操作符和函数的介绍。此外,本章还介绍了Hive中的事务处理,这是对数据仓库进行数据一致性和完整性管理的重要话题。 第6章...

Global site tag (gtag.js) - Google Analytics