查询语句
查询的一些例子:
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章 HiveQL:数据操作 第6章 HiveQL:查询 第7章 HiveQL:视图 第8章 HiveQL:索引 第9章 模式设计 第10章 调优 第11章 其他文件格式和压缩方法 第12章 开发 第13章 函数 第14章 Streaming 第15章 自定义Hive文件...
Hive3引入了LLAP(Live Long and Process)模式,实现查询结果缓存,提高交互式查询性能;独立的Metastore服务提高了元数据管理的稳定性和可扩展性。 总结来说,Hive性能优化涉及多个层面,包括表结构设计、数据...
总结,Hive作为Hadoop生态的重要组成部分,主要为大数据分析提供SQL查询能力,通过SQL与Hadoop集群交互,适用于处理和分析大规模分布式数据。尽管执行效率不如专门的实时查询引擎,但其易于使用和强大的SQL支持使其...
7. **Hive函数**:本章涉及Hive内置函数的使用,如统计函数、日期函数、字符串函数等,使用户能编写复杂的查询语句。 8. **Hive数据压缩**:讨论Hive如何进行数据压缩,提高存储效率和查询性能,理解各种压缩算法在...
5. **启动 Hive**:启动 Hive 服务,可以使用命令 `hive --service metastore` 启动 Metastore 服务,然后使用 `hive` 命令进入 Hive 命令行。 6. **创建表并加载数据**:在 Hive 命令行中,可以创建 Hive 表,定义...
语义分析阶段,即第五章,是理解Hive查询逻辑的关键。这部分会讨论语义处理模块之间的关系,例如如何处理表别名、函数调用、类型检查等。模板方法模式被用于提供一种可扩展的框架,使得不同的处理模块可以按需重写...
3. **验证设置**:配置完成后,可以通过运行简单的Hive查询来验证引擎是否成功切换。如果Hive查询日志显示Spark相关的信息,那么就表明已经成功切换到了Spark引擎。 使用Spark引擎有以下几点显著优势: 1. **内存...
【Hive函数重要应用案例1】本章主要探讨在Hive中处理特殊数据格式的技巧,特别是涉及多字节分隔符和字段内包含分隔符的问题。在Hive中,通常使用单字节分隔符(如逗号、制表符)来加载文本数据,但在实际场景中,...
5.Hive的数据处理 Hive的数据处理是指对大量数据的处理和分析。Hive提供了各种数据处理机制,包括数据清洁、数据转换、数据聚合等。 6.Hive的优化技术 Hive的优化技术是指对Hive的查询性能的优化。Hive提供了各种...
Hive是一种基于Hadoop的大数据仓库工具,可以将结构化的数据文件映射为一个表,并提供类SQL查询功能。Hive的优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计。延迟较高,使得Hive适合用于离线的...
5. **启动Hive**:启动Hive服务,如`hive`命令行工具,即可开始使用Hive进行数据操作。 了解和熟练掌握Hive的安装配置、基本知识和架构,对于大数据分析师和数据工程师来说至关重要,它能够有效地提升大数据分析的...
Hive 组件安装配置 ...五、实验总结 通过本实验,您已经完成了 Hive 组件的安装和配置,掌握了 Hive 组件的格式化和启动过程。在后续实验中,您将学习如何使用 Hive 进行数据仓库管理和数据分析。
第5章:Zeus任务资源调度工具 54.资源任务调度框架介绍 55.企业中常见的任务调度框架 56.Zeus的介绍及基本实现原理 57.Zeus安装部署-基本环境配置 58.Zeus安装部署-配置文件的修改 59.Zeus安装部署-编译打包 60.Zeus...
### 高级软件人才培训专家-Hadoop课程资料-4-第四章 - 分布式SQL计算 Hive 入门 #### Apache Hive 概述 Apache Hive 是一款面向大数据处理的分布式 SQL 计算工具,旨在简化 Hadoop 生态系统中的数据查询与分析流程...
5. 实验总结 通过本实验,您已经学习了如何安装和配置 Hive 组件,掌握了 Hive 组件的安装配置和格式化和启动。 Hive 是基于 Hadoop 的数据仓库工具,用于对大规模数据进行处理和分析。掌握 Hive 组件的安装配置和...
5. **Hive函数与运算符** Hive支持多种内置函数和运算符,用于数据处理和分析。例如: - **聚合函数**:COUNT(), SUM(), AVG(), MAX(), MIN()等用于对数据进行统计计算。 - **字符串函数**:LENGTH(), SUBSTRING...
### 高级软件人才培训专家-Hadoop课程资料-5-第五章 - 分布式SQL计算 Hive 语法与概念 #### 知识点概览 本章节主要围绕分布式SQL计算工具——Hive进行深入讲解,包括Hive的基本概念、语法结构以及如何通过Hive对...
#### 第五章:Hive棋中的战略思维 ##### 5.1 三大制胜关键 - **保护皇后蜂**:确保其安全。 - **攻击与防守平衡**:既要积极进攻也要稳固防守。 - **合理布局**:利用虫子特性构建有利阵型。 ##### 5.2 进攻还是...
第5章讨论数据操作,包括数据交换的 LOAD 和 INSERT 操作,ORDER BY 和 SORT 的使用,以及操作符和函数的介绍。此外,本章还介绍了Hive中的事务处理,这是对数据仓库进行数据一致性和完整性管理的重要话题。 第6章...