Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Not A Problem
-
0.9.0, 0.11.0
-
None
-
None
Description
select * from tt1 left outer join tt2 on (tt1.c1 = tt2.c1 and tt1.c1 <= 2);
does not give correct results.
to reproduce:
hive> create table tt1 (c1 int);
hive> create table tt2 (c1 int);
$ vi tt1
1
2
3
4
$ vi tt2
1
2
8
9
$ hadoop fs -put tt1 /user/hive/warehouse/tt1/
$ hadoop fs -put tt2 /user/hive/warehouse/tt2/
wrong result:
hive> select * from tt1 left outer join tt2 on (tt1.c1 = tt2.c1 and tt1.c1 <= 2);
1 1
2 2
3 NULL
4 NULL
correct result:
select * from tt1 left outer join tt2 on (tt1.c1 = tt2.c1) where tt1.c1 <= 2;
1 1
2 2
hive-0.11.0-bin$ head -1 RELEASE_NOTES.txt
Release Notes - Hive - Version 0.11.0
Attachments
Issue Links
- blocks
-
HIVE-1534 Join filters do not work correctly with outer joins
- Closed