hive:基本数据类型,关于表和列语法

基本数据类型

Hive 的数据类型分为基本数据类型和复杂数据类型

加粗的是常用数据类型
BOOLEAN出现ture和false外的其他值会变成NULL值
没有number,decimal类似number
如果输入的数据不符合数据类型, 映射时会变成NULL, 但是数据本身并没有被修改

创建表

创建表的本质其实就是在对应的数据库目录下面创建一个子目录,目录名为表名。数据文件就存在这个目录下。

使用语法1时需注意当前所在的数据库,判断是否需要切换数据库
工作中建议使用语法2
建表时未指定分隔符(语法1和语法2),Hive会使用默认的分隔符,列和列之间是\001,行与行之间是\n
row format delimited 开启分隔符格式化
分隔符可以自定义,比如逗号,\t制表符, 但是只能有单个分隔符
默认是以文本格式储存,所以 stored as textfile可写可不写

查看表


如果建表时没有指定分隔符,使用desc formatted tableName查看表结构时会出现SerDe Library行,
"SerDe Library" 行指的是用于序列化(Serializer)和反序列化(Deserializer)数据的库。在 Hive 中,SerDe 库负责将数据从一种格式转换为另一种格式,以便在查询和存储时使用。

如果建表时指定分隔符,使用desc formatted tableName查看表结构时会展示分隔符

删除表

修改表名


colType是数据类型;

修改列

  • 修改列的位置 : 注意, 2 .x 版本后,必须是相同类型进行移动位置。
    alter table tableName change column colName colName colType after colName1;
    alter table t1 change column english english int after chinese;
    alter table tableName change column colName colName colType first ;

将字段放在首位,前提是要移动的字段和第一个字段的数据类型要保持一致;


注意:修改,增加,删除字段等只是改变字段和数据的映射关系,表内的数据并没有改变

相关推荐
weixin_307779136 小时前
Spark Streaming的背压机制的原理与实现代码及分析
大数据·python·spark
想做富婆8 小时前
Hive:复杂数据类型之Map函数
数据仓库·hive·hadoop
梦醒沉醉11 小时前
单机伪分布Hadoop详细配置
大数据·hadoop·分布式
小Tomkk12 小时前
大数据相关职位介绍之一(数据分析,数据开发,数据产品经理,数据运营)
大数据·数据分析·数据开发·数据运营·数据产品经理
UI设计兰亭妙微12 小时前
大屏 UI 设计风格的未来趋势
大数据
乙卯年QAQ17 小时前
【Elasticsearch】Elasticsearch的查询
大数据·elasticsearch·搜索引擎
XianxinMao19 小时前
科技巨头AI投资引领未来增长
大数据·人工智能·科技
言之。19 小时前
【Spark速通】
大数据·分布式·spark