Hive数据类型

时间:2015-08-17 13:36:40   收藏:0   阅读:5062

1.hive常用的数据类型包括:

  tinyInt(byte),smallint(short),int,bigint(long),float,double,boolean,string类型。【括号中对应java类型】

补充:对于mysql中的varchar和char类型:若字符串长度小于10建议用char,大于10使用varchar。这是因为对于varchar类型,必须占有一到两个字节来说明它的字符长度。(char寻址快)

 技术分享

2.类型转换

  隐式转换规则:任何整数类型都可以隐式转换为一个范围更广的类型。

    所有整数类型 + float + string都可以转换为double类型。

  可以使用cast操作进行数据类型显示转换

    例如cast(‘1‘ as int)把字符串‘1‘转换成整数值1,转换失败则表达式返回控制NULL。

3.复杂类型

Create table complex (

Col1 array<int>,

Col2 map<string, int>,

Col3 struct<a:string, b:int, c:double>

);

  将内容为:array (1,2) map(‘a‘,1,‘b‘,2) struct(‘a‘,1,1.0) 的数据文件load到上面的表中。

  执行hive语句:Select Col1[0], Col2[‘b‘],Col3.c from complex;

  返回:1 2 1.0

4.内置函数

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!