Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Pig, mail # user - Joining 3 tables in Pig


Copy link to this message
-
Re: Joining 3 tables in Pig
Russell Jurney 2013-04-25, 08:40
You can do a 3-way inner join on the same keys, but if they are on
different keys (or a different type of join), you must do two joins.

Russell Jurney http://datasyndrome.com

On Apr 24, 2013, at 9:53 PM, Bill Graham <[EMAIL PROTECTED]> wrote:

> You'll need to do a 3-way join in two steps:
>
> A = load 'foo' as (col1, col2);
> B = load 'bar' as (col1);
> C = load 'bat' as (col1);
>
> AB = join A by col1, B by col1;
> ABC = join AB by A.col2, C by col1;
>
>
> On Wed, Apr 24, 2013 at 8:07 PM, j.barrett Strausser <
> [EMAIL PROTECTED]> wrote:
>
>> Have you tried it? If so, what was the result? Did you try
>>
>> DESCRIBE Joins;
>> ILLUSTRATE Joins;
>> EXPLAIN Joins:
>> DUMP Joins;
>>
>> If you haven't tried, that would be the first thing to do.
>>
>> http://pig.apache.org/docs/r0.11.1/basic.html#join-inner
>>
>> -b
>>
>>
>>
>> On Wed, Apr 24, 2013 at 10:39 PM, Raj hadoop <[EMAIL PROTECTED]> wrote:
>>
>>> Hi,
>>>
>>> I have a where condition in sql query like below
>>>
>>>
>>> Table1.col1=Table2.col3 and Table2.col2=Table3.col1 and
>>> Table3.col3=Table1.col2
>>>
>>> In Pig,
>>>
>>> Can i write like below
>>>
>>> A= Table1
>>> B=Table2
>>> C=Table3
>>>
>>> Joins = join A by col1,B by col3 and  B by col2,C by col1 and C by col3,A
>>> by cole
>>>
>>> Please help me.
>>>
>>> Raj
>>
>>
>>
>> --
>>
>>
>> https://github.com/bearrito
>> @barrettsmash
>
>
>
> --
> *Note that I'm no longer using my Yahoo! email address. Please email me at
> [EMAIL PROTECTED] going forward.*