2016-11-16 153 views
0

[此處輸入鏈接的描述] [1]蜂巢狀運營商

表1:

品牌
索尼
蘋果
谷歌
IBM

表2:

hive> select * from PRODUCT;  
SonyABC,Applepqr  101 
Sonyadvv,IBMabc  102 
Sonyaaaa    103 
Apple123,Sonyxyz  104 
Apple345,IBMabc  105 
IBM13123SonyABC  106 
My data is like above.and i need output like bellow.Please suggest a query 

SonyABC,Applepqr   101  Sony,Apple 
Sonyadvv,IBMabc   102  Sony,IBM 
Sonyaaaa     103  Sony 
Apple123,Sonyxyz   104  Apple,Sony 
Apple345,IBMabc   105  Apple,IBM 
IBM13123,SonyABC   106  IBM,Sony 
+1

的可能的複製[蜂巢 - LIKE操作(http://stackoverflow.com/questions/31340218/hive-like-operator) – Daniel

+0

感謝ü快速重播。我看到你以前的答案,我需要一點點more.mean我需要從兩個表列的輸出重複品牌column.is我的查詢工作?謝謝。 –

回答

0

可能在你的數據的一些問題,但這個工作過程如下 蜂房> SELECT * FROM品牌; 索尼 蘋果 谷歌 IBM

hive> select * from PRODUCT;  
SonyABC 101 
Sonyadvv  102 
Sonyaaaa  103 
Apple123  104 
Apple345  105 
IBM13123  106 

select PRODUCT.*, BRAND.* from BRAND, PRODUCT where trim(PRODUCT_ID) like concat(trim(BRAND_ID),'%'); 


SonyABC   101  Sony 
Sonyadvv  102  Sony 
Sonyaaaa  103  Sony 
Apple123  104  Apple 
Apple345  105  Apple 
IBM13123  106  IBM 
Time taken: 11.381 seconds, Fetched: 6 row(s) 
+0

謝謝Ravinder Karra。是的,我的意見有問題。我已更正它。請爲其提出建議。 –

+0

從BRAND,PRODUCT中選擇PRODUCT。*,BRAND。*,其中PRODUCT_ID如concat(BRAND_ID,'%'); (BRAND_ID,'%');是否查詢 - >是否工作 –

+0

從BRAND,PRODUCT中選擇PRODUCT。*,collect_set(BRAND),其中PRODUCT_ID如concat(BRAND_ID,'%');我運行你的查詢和我的。在兩個品牌專欄中都給出了空值。 –