Hive SQL常见操作

Hive SQL 是基于 Hadoop 的数据仓库基础设施,用于提供数据查询和分析。下面介绍常用的 Hive SQL 语句,进行数据处理和分析。

1. 数据库操作

创建数据库 :CREATE DATABASE IF NOT EXISTS db_name;

使用数据库:USE db_name;

删除数据库:DROP DATABASE IF EXISTS db_name CASCADE;

2.表操作

创建表:

复制代码
CREATE TABLE IF NOT EXISTS table_name (
  col1 datatype,
  col2 datatype,
  col3 datatype
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE;

查看表结构:

复制代码
DESCRIBE table_name;

删除表:

DROP TABLE IF EXISTS table_name;

3.数据导入

从本地文件系统导入数据:

LOAD DATA LOCAL INPATH '/path/to/file' INTO TABLE table_name;

从 HDFS 导入数据:

LOAD DATA INPATH '/path/in/hdfs' INTO TABLE table_name;

4.数据查询

基本查询:SELECT col1, col2 FROM table_name WHERE condition;

分组查询:SELECT col1, COUNT(*) FROM table_name GROUP BY col1;

排序查询:SELECT * FROM table_name ORDER BY col1 DESC;

5.连接操作

内连接:SELECT * FROM table1 JOIN table2 ON table1.id = table2.id;

左连接:SELECT * FROM table1 LEFT JOIN table2 ON table1.id = table2.id;

6.窗口函数

计算累计和:

SELECT col1, SUM(col2) OVER (ORDER BY col1) AS running_total FROM table_name;

分组排名:

SELECT col1, col2, RANK() OVER (PARTITION BY col1 ORDER BY col2 DESC) AS rank FROM table_name;

7.分区表操作

创建分区表:

CREATE TABLE IF NOT EXISTS table_name ( col1 datatype, col2 datatype ) PARTITIONED BY (dt string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',';

添加分区:

ALTER TABLE table_name ADD PARTITION (dt='2023-01-01');

8.插入数据

INSERT INTO TABLE table_name VALUES (val1, val2, val3);

9、聚合函数

计算平均值:

SELECT AVG(col1) FROM table_name;

计算最大值:

SELECT MAX(col1) FROM table_name;

10.其他常用操作

创建视图:

CREATE VIEW view_name AS SELECT col1, col2 FROM table_name;

设置Hive参数:

SET hive.execution.engine=tez;

相关推荐
还是奇怪7 小时前
深入解析三大Web安全威胁:文件上传漏洞、SQL注入漏洞与WebShell
sql·安全·web安全
技术卷10 小时前
详解力扣高频SQL50题之1164. 指定日期的产品价格【中等】
sql·leetcode·oracle
看天走路吃雪糕12 小时前
墨者:通过手工解决SQL手工注入漏洞测试(PostgreSQL数据库)
数据库·sql·postgresql·sql注入·墨者靶场
看天走路吃雪糕13 小时前
墨者:SQL注入漏洞测试(布尔盲注)
数据库·sql·sqlmap·墨者学院·布尔盲注
技术卷16 小时前
详解力扣高频SQL50题之610. 判断三角形【简单】
sql·leetcode·oracle
技术卷18 小时前
详解力扣高频SQL50题之619. 只出现一次的最大数字【简单】
sql·leetcode·oracle
码字的字节1 天前
ZooKeeper在Hadoop中的协同应用:从NameNode选主到分布式锁实现
hadoop·分布式·zookeeper·分布式锁
Goona_1 天前
拒绝SQL恐惧:用Python+pyqt打造任意Excel数据库查询系统
数据库·python·sql·excel·pyqt
rufeii1 天前
[极客大挑战 2019]FinalSQL--布尔盲注
sql
技术卷2 天前
详解力扣高频SQL50题之1084. 销售分析 III【简单】
sql·leetcode·oracle