2017-07-02 61 views
1

我使用蜂巢創建的表I要過濾的數據濾波器蜂房複雜數據類型

create table student(
     id bigint 
    ,name string 
    , course array<string>) 
ROW FORMAT DELIMiTED fields terminated by '\t' 
collection items terminated by ',' 
STORED AS TEXTFILE; 

和數據等

100 student1 java,.net,hadoop 
101 student2 .net,hadoop 
102 student3 java,hadoop 
103 student4 .net,hadoop 
104 student5 java,.net 
105 student6 java,.net,hadoop 
106 student7 .net,hadoop 

fiter基於課程教材= hadoop的這個數據

請任何人幫助我。

+0

** **等於或** **包含? –

+0

具有以上數據的課程數據類型,我想篩選正在做hadoop課程的學生 –

回答

0
select * 
from student 
where array_contains (course,'hadoop') 
; 

+-----+----------+--------------------------+ 
| id | name |   course   | 
+-----+----------+--------------------------+ 
| 100 | student1 | ["java",".net","hadoop"] | 
| 101 | student2 | [".net","hadoop"]  | 
| 102 | student3 | ["java","hadoop"]  | 
| 103 | student4 | [".net","hadoop"]  | 
| 105 | student6 | ["java",".net","hadoop"] | 
| 106 | student7 | [".net","hadoop"]  | 
+-----+----------+--------------------------+