您当前的位置: 首页 >  hive

Hive数据类型

发布时间:2020-02-18 12:21:03 ,浏览量:5

基本数据类型

在这里插入图片描述

集合数据类型

在这里插入图片描述

数据类型转换 隐式类型转换规则如下
  • 自动向上转型:任何整数类型都可以隐式地转换为一个范围更广的类型,如TINYINT可以转换成INT,INT可以转换成BIGINT。
  • 所有整数类型、FLOAT和STRING类型都可以隐式地转换成DOUBLE。
  • TINYINT、SMALLINT、INT都可以转换为FLOAT。
  • BOOLEAN类型不可以转换为任何其它的类型。
可以使用CAST操作显示进行数据类型转换

CAST(‘1’ AS INT):将把字符串’1’ 转换成整数1;如果强制类型转换失败,如执行CAST(‘X’ AS INT),表达式返回空值 NULL。

示例: 待导入的数据

zhangsan,xiaoming_xiaohua,tom:18_jerry:19,da xing_beijing lisi,xiaowei_xiaojian,lily:18_marry:19,chang ping_beijing

分析数据格式

{ "name": "zhangsan", "friends": ["lisi" , "wanger"] , //列表Array,  "children": { //键值Map, "tom": 18 , "jerry": 19 } "address": { //结构Struct, "street": "changping" , "city": "beijing" } } 
第一步:根据数据格式创建表

HQL语句:

create table tb_user( --此处表名不能叫user,否则会报错 name string, friends array<string>, children map<string, int>, address struct<street:string, city:string> ) row format delimited fields terminated by ',' collection items terminated by '_' map keys terminated by ':' lines terminated by '\n'; 

在这里插入图片描述

第二步:在linux的/home/hc目录下创建文件tbuser.txt,然后将待插入的数据拷贝到这个文件中

在这里插入图片描述

第三步:执行load命令,将Linux本地文件导入Hive中

在这里插入图片描述

查询数据
  • select * from tb_user 在这里插入图片描述
  • select friends[1] friend,children[‘tom’],address.street street from tb_user where name=‘zhangsan’; 在这里插入图片描述
关注
打赏
1688896170
查看更多评论

暂无认证

  • 5浏览

    0关注

    115984博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0860s