Hi guys,
please design job for this,
MY INPUT IS
COMPANY,LOCATION
IBM,CHENNAI
IBM,HYDRABAD
IBM,PUNE
IBM,BANGLOORE
TCS,CHENNAI
TCS,MUMBAI
TCS,BANGLOORE
WIPRO,HYDRABAD
WIPRO,CHENNAI
HSBC,PUNE
MY OUTPUT IS
COMPANY,LOCATION,COUNT
IBM,chennai,hydrabad,pune,banglore,4
TCS,chennai,mumbai,bangloore,3
WIPRO,hydrabad,chennai,2
HSBC,pune,1
Thanks
Answers were Sorted based on User's Feedback
Answer / ankit gosain
Hi All,
Create a job design like below:
SeqFile--->SortStage--->Transformer--->RemoveDup--->SeqFile
Steps:
-----
1. At sort stage, take sort key = Company and sort key mode
= Don't sort (Previously Grouped) & take a
CreateClusterKeyChange column.
2. At Transformer Stage, create two stage variables:
temp of integer type with 0 as default,
temp1 of varchar type.
now, write in their derivation:
if clusterKeyChange=1 then 1 else temp+1----temp
if clusterKeyChange=1 then Location else temp1:',':Location-
---temp1
Create one o/p column (say count).
Now derive the o/p derivation columns as:
Company--------Company
temp1----------Location
temp-----------Count
3. At remove duplicate stage, take key=Company and
Duplicate to retain = Last
now just drag and drop the i/p columns to o/p derivation
& you will get the desired result.
For further queries, mail me on ankitgosain@gmail.com
Cheers,
Ankit :)
| Is This Answer Correct ? | 14 Yes | 0 No |
what Ankit explained is correct. but small correction:
as per abouve explanation we get o/p location as below:
LOCATION
,chennai,hydrabad,pune,banglore
,chennai,mumbai,bangloore
,hydrabad,chennai
,pune
So, we need to do LTRIM/TRIM Function in devivation of the
column:
TRIM(temp1,',')---------->Location
then we get desired output.
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / raj
There are two requirements here
1. Counting
2. Converting rows to columns
Here is the design of the job
Source -> Pivot(Vertical) -> Transformer -> Destination
Pivot:
1. Use vertical pivot.
2. Mention Company as Group by column and Location as pivot. In the aggregate column choose count
Transformer:
1. Above pivoting gives locations in different columns. Use transformer to concatenate these columns using : operator
| Is This Answer Correct ? | 0 Yes | 0 No |
What are sequencers?
CAN WE DO HALF PROJECT IN PARALLEL JOBS AND HALF PROJECT IN SERVER JOBS?
wt is the diff b/w odbc and oracle stage
HOW CAN U DO ERROR HANDLING IN DATA STAGE?
What is the Main difference between Lookup Failure and Lookup Not Met? Plz explain with Example.
how to find diff between 2 dates without using Icon... funtions?
In the source seq file have 2 columns, i.e input: col1,col2 1,1 2,rajesh 3,15000 4,2 5,suresh 6,16000 7,3 8,veeru 9,17000 I want in the output like: eno,ename,sal 1,rajesh,15000 2,suresh,16000 3,veeru,17000 any one answer this scenario
there are two schemas x and y are there. some data is in x schema. i want to use that in y schema..how can i use? please give some possibilities
how do you pass parameters in a script?
Hi I am Vijay In my source i've 10 records in a single column.... but i want to split those records into 5 sequential files each seq file contains 2 records.?.... can any body help me?
15 Answers Scope International,
job locking methods? How can we unlock the job?
i have 4 jobs i want run 1job should run on 1node and 2job runon 2node and.... how to make it possible?