hive本身是不支援笛卡爾積的,不能用select t1.*, t2.* from table_1, table_2這種語法。但有時候確實需要用到笛卡爾積的時候,可以用下面的語法來實現同樣的效果:
select t1.*, t2.* from其中on 1=1是可選的,注意在hive的strict模式下不能用這種語法,需要先用set hive.mapred.mode=nonstrict;設為非strict模式就可以用了。(select * from table1) t1
join
(select * from table2) t2
on 1=1;
hive中的笛卡爾積
hive本身是不支援笛卡爾積的,不能用select t1.t2.from table 1,table 2這種語法。但有時候確實需要用到笛卡爾積的時候,可以用下面的語法來實現同樣的效果 select t1.t2.from select from table1 t1 join select from t...
hive中笛卡爾積的優化
由於乙個業務,必須要進行笛卡爾積,但是速度太慢了,left join時左表大概4萬條資料,右表大概 3000多條資料,這樣大概就是一億多條資料,這在大資料領域其實不算很大的資料量,但是hive中跑的特別慢。因為hive對笛卡爾積支援的不是很好,由於是全域性的操作,所以只能在乙個reduce中執行,導...
hive笛卡爾積 排序
原始需求 解決方案 笛卡爾積 排序 1 hive本身不支援笛卡爾積,不能使用select t1.t2.from table 1,table 2,可以使用 select t1.t2.from t1 join t2 on 1 1 在hive的strict模式下不能用這種語法,需要先用set hive.m...