Hive DDL&DML
1.删除分区
ALTER TABLE table_name DROP IF EXISTS PARTITION(dt='')
如果是删除多个分区,用逗号分隔:partition(dt='10'), partition(dt='11'),partition(dt='13')
如果是外部表,记得rm对应文件
2.添加分区
ALTER TABLE table_name ADD IF NOT EXISTS PARTITION(dt='')
添加多个分区用逗号分隔,partition关键字不能少
挂载目录到一个新的分区
alter table table_name add partition(分区字段名=分区数据值) location '路径';
修改分区location
alter table table_name add partition(分区字段名=分区数据值) set location '路径';
3.删除表
DROP TABLE table_name
如果是外部表,记得rm对应文件
4.添加字段
ALTER TABLE table_name ADD|REPLACE COLUMNS (col_name data_type [COMMENT col_comment], ...)
注意:新添加的字段只能添加在最后一个非分区字段的后面
如果想把字段添加在指定字段后面,可以在添加完字段后,使用下面的修改字段命令调整字段的顺序。
5.修改字段
ALTER TABLE table_name CHANGE [COLUMN] col_old_name col_new_name column_type [COMMENT col_comment] [FIRST|AFTER column_name]
6.加载文件数据到数据表中
LOAD DATA [LOCAL] INPATH 'path/file_name' [OVERWRITE] INTO TABLE table_name [PARTITION (partcol1=val1, partcol2=val2 ...)]
local 表示从本地文件系统加载数据文件(cp操作,即把本地文件copy到hdfs上),默认从HDFS上加载(mv操作,完成后原文件不保留)
7.查询结果写入到文件系统
INSERT OVERWRITE [LOCAL] DIRECTORY directory1
[ROW FORMAT row_format] [STORED AS file_format]
SELECT ... FROM ...
默认用^A分隔列
其他:
show databases;
use database_name;
show tables [in database_name];
show partitions table_name;
show create table [database_name.]table_name;
show functions;
desc database database_name;
desc [formatted] table_name
desc function fun_name;
desc function extended fun_name;
truncate table table_name;
drop table_name;
注1:
分区其实就是HDFS上表目录的子目录
bucket就是表目录下的具体文件
注2:
version 0.13.0:
如果字段都是null,则sum后为null
如果字段都是null,count([distinct])结果为0
注3:
hive -e "select * from table_name limit 10"
hive -f file_name 执行file_name中的hivesql
注4:
hive-site.xml: Hive的主要配置文件
hivemetastore-site.xml: 元数据的配置文件
hiveserver2-site.xml: HiveServer2的配置文件
配置优先级(低->高):hive-site.xml -> hivemetastore-site.xml -> hiveserver2-site.xml -> -- hiveconf -> set
Hive DDL&DML的更多相关文章
- Hive DDL DML SQL操作
工作中经常要用到的一些东西,一直没整理,用的多的记住了,用的不多的每次都是去查,所以记录一下. DDL(数据定义语言),那就包括建表,修改表结构等等了 建表:create hive table hiv ...
- Hive| DDL| DML
类型转换 可以使用CAST操作显示进行数据类型转换 例如CAST(' 转换成整数1:如果强制类型转换失败,如执行CAST('X' AS INT),表达式返回空值 NULL. : jdbc:hive2: ...
- Hive数据据类型 DDL DML
Hive的基本数据类型 DDL DML: 基本数据类型 对于Hive而言String类型相当于数据库的varchar类型,该类型是一个可变的字符串,不过它不能声明其中最多能存储多少个字符,理论上它可以 ...
- hive DDL
官网地址:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL https://cwiki.apache.org/co ...
- Hive 官方手册翻译 -- Hive DDL(数据定义语言)
Hive DDL(数据定义语言) Confluence Administrator创建, Janaki Lahorani修改于 2018年9月19日 原文链接 https://cwiki.apache ...
- 吴裕雄--天生自然HADOOP操作实验学习笔记:hive DDL
实验目的 了解hive DDL的基本格式 了解hive和hdfs的关系 学习hive在hdfs中的保存方式 学习一些典型常用的hiveDDL 实验原理 有关hive的安装和原理我们已经了解,这次实验我 ...
- DDL DML DCL SQL
https://dev.mysql.com/doc/refman/5.7/en/glossary.html#glos_ddl SQL The Structured Query Language tha ...
- ORA-38301:can not perform DDL/DML over objects in Recycle Bin
一个智障操作,drop一个用户,下面的东西比较多,删得比较慢,然后shell突然关了. 就导致了,删不掉,又不能创建新的用户.出版本要得比较急,就先创建新的用户测试去了. 今天要弄个东西,又想起这个事 ...
- MySQL中的DDL,DML
MySQL中的DDL,DMLDDL:数据定义语言: CREATE,ALTER,DROP DB组件:数据库.表.索引.视图.用户.存储过程.存储函数.触发器.事件调度器等 CR ...
随机推荐
- xib或者storyboard设置颜色偏问题(与代码设置颜色不一致)
选中xib中的label,在右边栏的第三个标签页中第三项是User Defined Runtime Attributes 添加一个keyPath,keyPath值为layer.borderWidth, ...
- tt1
DIm #include iostream.h#include iostream.h# #include iostream.h http://www.cnblogs.com/cmt/archive/2 ...
- xode5.1.1设置IOS欢迎界面的方法
先准备3张不同尺寸的欢迎图.文件名称分别为: Default.png iPhone 320X480分辨率屏幕默认启动图片. Default@2x.png iPhone 640X960分辨率屏幕默认启 ...
- Android小技巧总结1
0.Android彻底退出引用程序的方法 1) Dalvik VM的本地方法 android.os.Process.killProcess(android.os.Process.myPid()); / ...
- Java千百问_03基本的语法(001)_局部变量、类变量、实例变量有什么差别
点击进入_很多其它_Java千百问 局部变量.类变量.实例变量有什么差别 在聊局部变量.类变量.实例变量有什么差别之前,我们须要了解一下Java变量. 1.Java变量是什么 在数学世界中,我们知道有 ...
- 将JSON对象转换成IList,好用linq
JObject JToken JProperty IList<> 搞得头都大了,记而备忘: JObject json = ..... JToken[] jps = json["r ...
- cp和scp
1 两个命令的格式一样 cp src dst scp src dst 将src文件拷贝到dst目的地.cp是本机拷贝,即从本机的一个地方拷贝到另外一个地方. 而scp是拷贝到远程及其还是从远程机器拷贝 ...
- 蓝桥 PREV-30 历届试题 波动数列 【动态规划】
历届试题 波动数列 时间限制:1.0s 内存限制:256.0MB 问题描述 观察这个数列: 1 3 0 2 -1 1 -2 ... 这个数列中后一项总是比前一项增加2或者减少3. ...
- exynos 4412 时钟配置
/** ****************************************************************************** * @author Maox ...
- nestedScrollview 嵌套使用recyclerview判断滑动到底部 (嵌套滑动导致 不能使用recyclerview的onscrolled监听)
NestedScrollView scroller = (NestedScrollView) findViewById(R.id.myScroll); if (scroller != null) { ...