[基本型別]
tinyint //byte 1
smallint //short 2
int //int 4
bigint //long 8
float //float 4
double //double 8
decimal //decimal 精度和刻度decimal(10,3)
binary //二進位制
boolean //true | false
string //字串
char //定長<= 255 10補空格
varchar //變長<=65355.
date //日期'2013-01-01'
timestamp //時間戳'2013-01-01 12:00:01.345'
2.[複雜型別]
//字串
char //定長<= 255 10補空格
varchar //變長<=65355.
date //日期'2013-01-01'
timestamp //時間戳'2013-01-01 12:00:01.345'
資料在/root下emp.txt
michael|montreal,toronto|male,30|db:80|product:developer,lead
will|montreal|male,35|perl:85|product:lead,test:lead
shelley|new york|female,27|python:80|test:lead,coe:architect
建立複雜型別變結構
create external table empwb(name string,address array
,base struct
>
,map1 map
int>
,map2 map>
)row format delimited fields
terminated
by'|' collection items terminated
by',' map keys
terminated
by':'
lines
terminated
by'\n' stored as textfile;
通過/root/emp.txt檔案匯入到emp表中
load
data
local inpath '/root/emp.txt'
into
table emp;
通過hdfs上的emp.txt檔案匯入到emp表中(hdfs上的檔案會被剪貼)
load
data inpath '/root/emp.txt'
into
table emp;
檢視表資料
建立另一張表資料以及結構(通過一張內部表不可以建立一張外部表)
create
table emp07 as
select name,address,base,map1,map2 from emp;
修改表名
alter
table employee rename
to emp ;
mysql中檢視hive表
select
*from tbls;
內部表
managed
刪除表時,源資料也被刪除。檔案會在hdfs上存在的。
外部表
external
刪除表時,資料不會刪除,只刪除表結構。常用
Hive中的複雜型別
hive專欄 主目錄 前言 建立資料庫表,以array作為資料型別 create table person name string,work locations array row format delimited fields terminated by t collection items te...
hive函式之 複雜型別長度統計函式
語法 size map 返回值 int 說明 返回map型別的長度 hive select size t from map table2 2 語法 size array 返回值 int 說明 返回array型別的長度 hive select size t from arr table2 4 型別轉換...
hive函式之 複雜型別長度統計函式
語法 size map 返回值 int 說明 返回map型別的長度 hive select size t from map table2 2 語法 size array 返回值 int 說明 返回array型別的長度 hive select size t from arr table2 4 型別轉換...