目录
基本数据类型
Hive数据类型 | Java数据类型 | 长度 | 例子 |
---|---|---|---|
TINYINT | byte | 1byte 有符号整数 | 20 |
SMALINT | short | 2byte 有符号整数 | 20 |
INT | int | 4byte 有符号整数 | 20 |
BIGINT | long | 8byte 有符号整数 | 20 |
BOOLEAN | boolean | 布尔类型,true 或者 false | TRUE FALSE |
FLOAT | float | 单精度浮点数 | 3.14159 |
DOUBLE | double | 双精度浮点数 | 3.14159 |
STRING | string | 字符系列。可以指定字符集。 可以使用单引号或者双引号。 | ‘now is the time’ “for all good men” |
TIMESTAMP | 时间类型 | ||
BINARY | 字节数组 |
注意:
STRING类型相当于数据库中的varchar,但是不能声明最多能存储的字符,理论上可以存储2GB的字符数。
集合数据类型
数据类型 | 描述 | 语法示例 |
---|---|---|
STRUCT | 通过“点”符合访问元素内容,如STRUCT(first string, last string),第一个元素通过字段.first来引用 | struct() |
MAP | 键值对,使用数组表示法访问数据 | map() |
ARRAY | 具有相同类型和名称的变量的集合 | Array() |
类型转换
原子数据类型可以进行隐式转换,低 -> 高
高 -> 低 需强制转换,CAST('1' AS INT),若转换失败,表达式返回NULL