array中的資料為相同型別,例如,假如array a中元素[『a』,『b』,『c』],則a[1]的值為』b』
資料結構如下:
zhangsan beijing,shanghai,tianjin,hangzhou
wangwu shanghai,chengdu,wuhan,haerbin
create table complex_array(name string,work_locations array< string > ) row format delimited fields terminated by 『\t』 collection items terminated by 『,』; load data local inpath 『/export/data/hivedata/complex_array.txt』 into table complex_array; 檢視array的元素 用下標進行尋找,類似於其他程式語言中的陣列訪問 select work_locations[1] from complex_array;
可以通過[「指定key名稱」]訪問
1,zhangsan,唱歌:非常喜歡‐跳舞:喜歡‐游泳:一般般
2,lisi,打遊戲:非常喜歡‐籃球:不喜歡
create table complex_map(id int,name string,hobby map< string,string >) row format delimited fields terminated by 『,』 collection items terminated by 『‐』 map keys terminated by 『:』;
load data local inpath 『/export/data/hivedata/complex_map.txt』 into table complex_map;
以普通字串對映:
create table complex_map_s(id int,name string,hobby string) row format delimited fields terminated by 『,』;
集合元素可以型別不一樣 例如c的型別為struct,我們可以通過c.a來訪問域a
1,zhou:30
2,yan:30
3,chen:20
4,li:80
create table complex_struct(id int, info struct) row format delimited fields terminated by 『,』 collection items terminated by 『:』;
load data local inpath 『/export/data/hivedata/complex_struct.txt』 into table complex_struct;
select info.age from complex_struct;
復合資料型別
復合資料型別 作用 封裝資料 多種不同型別資料存放在一起 應存放在全域性,在訪問結構體中的變數時,應用stu.id stu.name 初始化的方式 在對陣列進行初始化時 strcpy stu.name,zhangsan 在對指標進行初始化時 char name 對name進行初始化 stu.name...
復合資料型別
一 struct結構體 封裝資料 存放多種不同的資料型別 struct的宣告放在全域性區 1.宣告和定義 宣告 struct student struct student stu array 3 int i for i 0 i 3 i for i 0 i 3 i include struct stu...
復合資料型別
結構體 作用 封裝資料 把多種不同的資料型別放在一起 注意 一般放在全域性 分號不能省略。結構體變數用點訪問 結構體指標用 訪問 初始化 靜態初始化 動態初始化 使用注意事項 給結構體中的陣列成員賦值時,不能直接將字串賦給陣列名,可以使用strcpy函式 給結構體中的指標變數成員賦值時,要先給指標分...