Hadoop生态hive(四)数据类型
轉(zhuǎn)載自??Hive數(shù)據(jù)類型
一、列類型
列類型被用作Hive的列數(shù)據(jù)類型。它們?nèi)缦?#xff1a;
(1)整型
整型數(shù)據(jù)可以指定使用整型數(shù)據(jù)類型,INT。當(dāng)數(shù)據(jù)范圍超過INT的范圍,需要使用BIGINT,如果數(shù)據(jù)范圍比INT小,使用SMALLINT。 TINYINT比SMALLINT小。
下表描述了各種INT數(shù)據(jù)類型:
| TINYINT | Y | 10Y |
| SMALLINT | S | 10S |
| INT | - | 10 |
| BIGINT | L | 10L |
(2)字符串類型
字符串類型的數(shù)據(jù)類型可以使用單引號(hào)('')或雙引號(hào)(“”)來指定。它包含兩個(gè)數(shù)據(jù)類型:VARCHAR和CHAR。Hive遵循C-類型的轉(zhuǎn)義字符。
下表描述了各種CHAR數(shù)據(jù)類型:
| VARCHAR | 1 to 65355 |
| CHAR | 255 |
(3)時(shí)間戳
它支持傳統(tǒng)的UNIX時(shí)間戳可選納秒的精度。它支持的java.sql.Timestamp格式“YYYY-MM-DD HH:MM:SS.fffffffff”和格式“YYYY-MM-DD HH:MM:ss.ffffffffff”。
(4)日期
DATE值在年/月/日的格式形式描述 {{YYYY-MM-DD}}.
(5)小數(shù)點(diǎn)
在Hive 小數(shù)類型與Java大十進(jìn)制格式相同。它是用于表示不可改變?nèi)我饩取UZ法和示例如下:
DECIMAL(precision, scale) decimal(10,0)(6)聯(lián)合類型
聯(lián)合是異類的數(shù)據(jù)類型的集合。可以使用聯(lián)合創(chuàng)建的一個(gè)實(shí)例。語法和示例如下:
UNIONTYPE<int, double, array<string>, struct<a:int,b:string>>{0:1} {1:2.0} {2:["three","four"]} {3:{"a":5,"b":"five"}} {2:["six","seven"]} {3:{"a":8,"b":"eight"}} {0:9} {1:10.0}二、文字
下面是Hive中使用的文字中:
(1)浮點(diǎn)類型
浮點(diǎn)類型是只不過有小數(shù)點(diǎn)的數(shù)字。通常,這種類型的數(shù)據(jù)組成DOUBLE數(shù)據(jù)類型。
(2)十進(jìn)制類型
十進(jìn)制數(shù)據(jù)類型是只不過浮點(diǎn)值范圍比DOUBLE數(shù)據(jù)類型更大。十進(jìn)制類型的范圍大約是?-10-308?到 10308.
?
三、Null 值
缺少值通過特殊值 - NULL表示。
?
四、復(fù)雜類型
Hive復(fù)雜數(shù)據(jù)類型如下:
(1)數(shù)組
在Hive 數(shù)組與在Java中使用的方法相同。
Syntax: ARRAY<data_type>(2)映射
映射在Hive類似于Java的映射。
Syntax: MAP<primitive_type, data_type>(3)結(jié)構(gòu)體
在Hive結(jié)構(gòu)體類似于使用復(fù)雜的數(shù)據(jù)。
Syntax: STRUCT<col_name : data_type [COMMENT col_comment], ...>總結(jié)
以上是生活随笔為你收集整理的Hadoop生态hive(四)数据类型的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 曼陀沙华的寓意是什么
- 下一篇: springboot 多数据源mybat