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的更多相关文章

  1. Hive DDL DML SQL操作

    工作中经常要用到的一些东西,一直没整理,用的多的记住了,用的不多的每次都是去查,所以记录一下. DDL(数据定义语言),那就包括建表,修改表结构等等了 建表:create hive table hiv ...

  2. Hive| DDL| DML

    类型转换 可以使用CAST操作显示进行数据类型转换 例如CAST(' 转换成整数1:如果强制类型转换失败,如执行CAST('X' AS INT),表达式返回空值 NULL. : jdbc:hive2: ...

  3. Hive数据据类型 DDL DML

    Hive的基本数据类型 DDL DML: 基本数据类型 对于Hive而言String类型相当于数据库的varchar类型,该类型是一个可变的字符串,不过它不能声明其中最多能存储多少个字符,理论上它可以 ...

  4. hive DDL

    官网地址:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL https://cwiki.apache.org/co ...

  5. Hive 官方手册翻译 -- Hive DDL(数据定义语言)

    Hive DDL(数据定义语言) Confluence Administrator创建, Janaki Lahorani修改于 2018年9月19日 原文链接 https://cwiki.apache ...

  6. 吴裕雄--天生自然HADOOP操作实验学习笔记:hive DDL

    实验目的 了解hive DDL的基本格式 了解hive和hdfs的关系 学习hive在hdfs中的保存方式 学习一些典型常用的hiveDDL 实验原理 有关hive的安装和原理我们已经了解,这次实验我 ...

  7. DDL DML DCL SQL

    https://dev.mysql.com/doc/refman/5.7/en/glossary.html#glos_ddl SQL The Structured Query Language tha ...

  8. ORA-38301:can not perform DDL/DML over objects in Recycle Bin

    一个智障操作,drop一个用户,下面的东西比较多,删得比较慢,然后shell突然关了. 就导致了,删不掉,又不能创建新的用户.出版本要得比较急,就先创建新的用户测试去了. 今天要弄个东西,又想起这个事 ...

  9. MySQL中的DDL,DML

    MySQL中的DDL,DMLDDL:数据定义语言:    CREATE,ALTER,DROP        DB组件:数据库.表.索引.视图.用户.存储过程.存储函数.触发器.事件调度器等    CR ...

随机推荐

  1. 省市县三级联动js代码

    省市县三级联动菜单,JS全国省市县(区)联动代码,一般可以用于用户注册或分类信息二手交易网站,需要的朋友直接复制代码就可以用了,不过有朋友反馈说缺少某些城市,具体缺少哪个尚不知,请想用的朋友自己补全吧 ...

  2. 《转》 Ceilometer项目源代码分析----ceilometer项目源代码结构分析

    感谢朋友支持本博客,欢迎共同探讨交流.因为能力和时间有限,错误之处在所难免,欢迎指正! 假设转载,请保留作者信息. 博客地址:http://blog.csdn.net/gaoxingnengjisua ...

  3. 2015 Multi-University Training Contest 4 1001 Olympiad

    代码: #include<cstdio> #include<cstring> #include<set> using namespace std; int vis[ ...

  4. 告诉大家我是如何在14:00秒杀到 《深入理解Bootstrap》

    1.打开火狐,不用IE,3个评论窗口,层叠在一起,可以点击3次哦. 2.打开一个百度的现在时间,不能看你本机的时间,要互联网的时间. 3.等时间到13:59:59,开始依次点击按钮,总有你预想不到的结 ...

  5. [办公自动化]如何让excel图表标签中显示最新值数据

    同事做了一张excel图表,希望最新的数据显示数据标签,其他都不显示.并且当单元格的数据新增加时,这个标签要能自动更新. 这里需要用到公式,获取到这个最新值.在b2输入公式=lookup(9e+307 ...

  6. JBOSS和EJB学习一

    1.使用软件 IDE:Eclipse4.3(开普勒) EE版本 服务器:jboss EAP 6.2 eclipse-jboss plugin:jbosstools-Update-4.1.2.Final ...

  7. 【OI】关于斯特林数的简单理解

    斯特林数分为第一类斯特林数:S1(n,k)和第二类斯特林数:S2(n,k). S1(n,k)代表在n个元素中选出k个环的方案数,S2(n,k)代表在n个元素中选出k个非空集合的方案数, 不同之处在于, ...

  8. luence全文检索(数据库检索)

    注解:从数据库中查询所有数据然后放入luence中,然后在luence来检索 package com.zhu.demo; import java.io.IOException; import java ...

  9. codeforces round #428 div2

    A:暴力模拟,能加就加,如果累计到了8就加上,每次累积 #include<bits/stdc++.h> using namespace std; int main() { ; scanf( ...

  10. 4-2 买家类目-dao(下)

    查询出来的对象ProductCategory就已经有updateTime和createTime了,然而你只是把对象的categoryType给修改了一下,修改之后就执行save方法保存了.所以它还是原 ...