Hive系列文章
Hive系列 (八):Hive中的explode 与 lateral view
数据类型转换
同其他语言一样,Hive也包含隐式转换和显式转化。
- Hive会对numeric类型的数据进行隐式转换。
- 任何整数类型都可以隐式地转换成一个范围更大的类型。
TINYINT,SMALLINT,INT,BIGINT,FLOAT和STRING
都可以隐式 地转换成DOUBLE;BOOLEAN类型不能转换为其他任何数据类型。- 可以使用CAST操作显示进行数据类型转换,例如
CAST(‘1’ AS INT)
将把字符串’1’ 转换成整数1;如果强制类型转换失败,如执行CAST(‘X’ AS INT)
,表达式返回空值NULL
Cast显示转换
可以用CAST来显式的将一个类型的数据转换成另一个数据类型,其语法为cast(value AS TYPE)
0: jdbc:hive2://master:10000> select stu_id,chinese from myhive.stu_scores where stu_id = 10001;
OK
+---------+----------+
| stu_id | math |
+---------+----------+
| 10001 | 70.0 |
+---------+----------+
1 row selected (4.558 seconds)
0: jdbc:hive2://master:10000> select stu_id,cast(math as float) as math from myhive.stu_scores where stu_id = 10001;
OK
+---------+-------+
| stu_id | math |
+---------+-------+
| 10001 | 70.0 |