hive查询数据详解:从基础语法到分布式特性
Hive 查询语法与传统 SQL 高度兼容,但作为分布式数据仓库,其查询执行依赖 MapReduce/Spark 等引擎,因此衍生出适合分布式场景的特性(如 SORT BY、DISTRIBUTE BY 等)。本文重点讲解 Hive 查询的基础语法、分布式排序与分区特性,帮助开发者高效编写 Hive SQL。
Hive 查询基础语法
Hive 查询核心语法与 SQL 一致,支持 SELECT、WHERE、GROUP BY、JOIN 等常见操作,适用于结构化数据的筛选、聚合和关联分析。
基础查询操作
| 操作类型 | 语法示例 | 说明 |
|---|---|---|
| 全表扫描 | SELECT * FROM dept; |
查询表中所有列和行 |
| 特定列查询 | SELECT deptno, dname FROM dept; |
仅查询指定列,减少数据传输 |
| 条件过滤 | SELECT * FROM emp WHERE sal > 2000; |
通过 WHERE 筛选符合条件的行 |
| 别名设置 | SELECT deptno AS no, dname AS name FROM dept; |
用 AS 为列或表设置别名,简化查询 |
| 去重查询 | SELECT DISTINCT deptno FROM emp; |
用 DISTINCT 去除重复值 |
范围与模糊查询
Hive 支持 SQL 中的范围判断和模糊匹配,满足复杂筛选需求:
范围查询
1 | -- 数值范围(BETWEEN ... AND) |