calculate percentages after joining 2 tables









up vote
0
down vote

favorite












I have two tables, and I'd like to see the total number of customers and the total number of gender either male or female per each Book. After finding that, I'd like to get the percentage of gender customer.



Here is the Customer table:

Cus_Id Fname Gender
12 Sam male
13 Waqas female
14 Sim male
15 Rwan female

Here is the Books_cust table:

Book_Id Cus_Id Rating
348 12 5
342 13 8
323 13 4
434 15 9


I have so far is the following code.

LOAD1 = load '/user/Customer.txt' using PigStorage() AS (Cus_Id:int, Fname:chararray, Gender:chararray);
LOAD2 = load '/user/Books_cust.txt' using PigStorage() AS (Book_Id:int,Cus_Id:int, Rating:int);
JOIN1 = JOIN LOAD1 BY Cus_Id, LOAD2 by Cus_Id;
GROUP1 = GROUP JOIN1 BY (Book_Id, Gender);
GENERATE1 = FOREACH GROUP1 GENERATE FLATTEN(group), COUNT(JOIN1);









share|improve this question





















  • Please specify expected outputs as per you tables so that it is clear as to what is required.
    – Rajeev Atmakuri
    Nov 11 at 10:01














up vote
0
down vote

favorite












I have two tables, and I'd like to see the total number of customers and the total number of gender either male or female per each Book. After finding that, I'd like to get the percentage of gender customer.



Here is the Customer table:

Cus_Id Fname Gender
12 Sam male
13 Waqas female
14 Sim male
15 Rwan female

Here is the Books_cust table:

Book_Id Cus_Id Rating
348 12 5
342 13 8
323 13 4
434 15 9


I have so far is the following code.

LOAD1 = load '/user/Customer.txt' using PigStorage() AS (Cus_Id:int, Fname:chararray, Gender:chararray);
LOAD2 = load '/user/Books_cust.txt' using PigStorage() AS (Book_Id:int,Cus_Id:int, Rating:int);
JOIN1 = JOIN LOAD1 BY Cus_Id, LOAD2 by Cus_Id;
GROUP1 = GROUP JOIN1 BY (Book_Id, Gender);
GENERATE1 = FOREACH GROUP1 GENERATE FLATTEN(group), COUNT(JOIN1);









share|improve this question





















  • Please specify expected outputs as per you tables so that it is clear as to what is required.
    – Rajeev Atmakuri
    Nov 11 at 10:01












up vote
0
down vote

favorite









up vote
0
down vote

favorite











I have two tables, and I'd like to see the total number of customers and the total number of gender either male or female per each Book. After finding that, I'd like to get the percentage of gender customer.



Here is the Customer table:

Cus_Id Fname Gender
12 Sam male
13 Waqas female
14 Sim male
15 Rwan female

Here is the Books_cust table:

Book_Id Cus_Id Rating
348 12 5
342 13 8
323 13 4
434 15 9


I have so far is the following code.

LOAD1 = load '/user/Customer.txt' using PigStorage() AS (Cus_Id:int, Fname:chararray, Gender:chararray);
LOAD2 = load '/user/Books_cust.txt' using PigStorage() AS (Book_Id:int,Cus_Id:int, Rating:int);
JOIN1 = JOIN LOAD1 BY Cus_Id, LOAD2 by Cus_Id;
GROUP1 = GROUP JOIN1 BY (Book_Id, Gender);
GENERATE1 = FOREACH GROUP1 GENERATE FLATTEN(group), COUNT(JOIN1);









share|improve this question













I have two tables, and I'd like to see the total number of customers and the total number of gender either male or female per each Book. After finding that, I'd like to get the percentage of gender customer.



Here is the Customer table:

Cus_Id Fname Gender
12 Sam male
13 Waqas female
14 Sim male
15 Rwan female

Here is the Books_cust table:

Book_Id Cus_Id Rating
348 12 5
342 13 8
323 13 4
434 15 9


I have so far is the following code.

LOAD1 = load '/user/Customer.txt' using PigStorage() AS (Cus_Id:int, Fname:chararray, Gender:chararray);
LOAD2 = load '/user/Books_cust.txt' using PigStorage() AS (Book_Id:int,Cus_Id:int, Rating:int);
JOIN1 = JOIN LOAD1 BY Cus_Id, LOAD2 by Cus_Id;
GROUP1 = GROUP JOIN1 BY (Book_Id, Gender);
GENERATE1 = FOREACH GROUP1 GENERATE FLATTEN(group), COUNT(JOIN1);






apache-pig






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 10 at 20:02









Fahed

61




61











  • Please specify expected outputs as per you tables so that it is clear as to what is required.
    – Rajeev Atmakuri
    Nov 11 at 10:01
















  • Please specify expected outputs as per you tables so that it is clear as to what is required.
    – Rajeev Atmakuri
    Nov 11 at 10:01















Please specify expected outputs as per you tables so that it is clear as to what is required.
– Rajeev Atmakuri
Nov 11 at 10:01




Please specify expected outputs as per you tables so that it is clear as to what is required.
– Rajeev Atmakuri
Nov 11 at 10:01

















active

oldest

votes











Your Answer






StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");

StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













 

draft saved


draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53242921%2fcalculate-percentages-after-joining-2-tables%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown






























active

oldest

votes













active

oldest

votes









active

oldest

votes






active

oldest

votes















 

draft saved


draft discarded















































 


draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53242921%2fcalculate-percentages-after-joining-2-tables%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







這個網誌中的熱門文章

What does pagestruct do in Eviews?

Dutch intervention in Lombok and Karangasem

Channel Islands