Converting Rows to columns
I have Relational source like his.
JAN FEB MAR APR
100 200 300 400
500 600 700 800
900 100 200 300
I need to convert these rows into columns to the targe.
MONTH TOTAL
JAN 1500
FEB 900
MAR 1200
APR 1500
Please experts help me
Answers were Sorted based on User's Feedback
Answer / sehajshangari1235
TAKE A NORMALIZER TRANSFORMATION.
CREATE A NORMALIZED PORT NAMED "DETAIL" WITH OCCURENCE 4
.CONNECT INPUT PORTS FROM SOURCE QUALIFIER TO EACH DETAIL
PORT IN NORMALIZER.
NEXT TAKE AN EXPRESSION TRANSFORMATION.IN THAT CREATE AN
OUTPUT PORT NAMED MONTH.AN IN EXPRESSION EDITER WRITE THE
LOGIC AS
DECODE(GCID_DETAIL,1,'JAN',DECODE(GCID_DETAIL,2,'FEB',DECODE(
GCID_DETAIL,3,'MARCH','APRIL')))
CONNECT THIS OUTPUT PORT TO TARGET TABLE PORT!!!
SEHAJ
7204719446
| Is This Answer Correct ? | 3 Yes | 1 No |
Answer / sham
we can't sum aggregate function in Exp T/F.i.e it is not
possible to use sum() in expression T/F. so go through Agg T/F
....
Group by month
o/p port-------> sum(sal)
| Is This Answer Correct ? | 3 Yes | 2 No |
Answer / reddy
Answer:
Source --> Source qualifier --> Normalizer --> Expr -->
Agg --> target
Step 1:
Source --> Source qualifier --> Normalizer --> Expr -->
Expression Condition:
DECODE(GCID_DETAIL,1,'JAN',DECODE(GCID_DETAIL,2,'FEB',DECODE
(
GCID_DETAIL,3,'MARCH','APRIL')))
JAN 100
JAN 500
JAN 900
FEB 200
FEB 600
FEB 100
MAR 300
MAR 700
MAR 200
APR 400
APR 800
ApR 300
Step 2:
Source --> Source qualifier --> Normalizer --> Expr -->
Agg --> target
1) Group by month
2) Sum(Amount)
MONTH TOTAL
JAN 1500
FEB 900
MAR 1200
APR 1500
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / prabhu
Source qualifier --> Normalizer --> Expr --> Agg --> target
In Normalizer give the four numeric values as input and then take numeric value and it's GK_value to expression.
In Expression i have made flag for month and hardcoding values of month
Flag_Jan --> IN(GK_Salary,1,5,9,0)
Flag_Feb --> in(GK_Salary,2,6,10,0)
Flag_Mar --> in(GK_Salary,3,7,11,0)
Month --> iif(Flag_Jan = 1,'Jan',iif(Flag_Feb = 1,'Feb',iif(Flag_Mar = 1,'Mar','Aprl')))
In agg group by on month and get sun(numeric value)
Pass month and sum(numeric) value to target
| Is This Answer Correct ? | 1 Yes | 1 No |
Answer / dilip ingole
using query
SELECT 'JAN' AS MONTHS,SUM(JAN) FROM CALADERQUERY
UNION
SELECT 'FEB' AS MONTHS,SUM(FEB) FROM CALADERQUERY
UNION
SELECT 'MAR' AS MONTHS,SUM(MAR) FROM CALADERQUERY
UNION
SELECT 'APR' AS MONTHS,SUM(APR) FROM CALADERQUERY;
| Is This Answer Correct ? | 0 Yes | 0 No |
You will take Expression Transfermation.
In Expression Editon you can write lke this
sum(months) and group by month.
| Is This Answer Correct ? | 2 Yes | 5 No |
How will you update the first four rows and insert next four rows in a mapping?
What are the tuning techniques you applied during your last project
By using Transformation i need top most 5 employee salary from each deptwise? Deptno 10,20,30? which transformation we need to use?
can v update d records in target using update stargey without generationg primary key ? explain
create a mapping to retrieve the employees who are getting salary greater than average salary?
Hi i am new to Informatica. I have few question's in Informatica. Can any one respond, it will be appricaited. Q.Is Flat File Contains the Dynamic Cache?
waht type of interface is used for testing the data in informatica
Can anyone tell me the new features in Informatica 9 Version?
What is a code page in Informatica
3 Answers American Express, Cognizant, Deloitte,
I have source like col1,col2,col3,col4 and the values are like 3,6,1,7 1,5,3,8 2,1,5,6 i want the output like 3,6,7 5,3,8 2,5,6 How we will achieve in this scenario in informatica level. Please help me.. Thanks in advance..
i have 1000 records in my dource table, the same i have in target ,but a new column added in target as "batchno", and this column adds no 10 for 1st 100 records and 20 for next 100 records and 30 next 100 records and vice versa. how to acheive this?
I have a scenario which load the data frm single source to 2 targets as T1, T2, and T1 have a P.K and T2 have F.K relations. first data has to load in T2, and then data load to T1 if that record exist in T1... how can we acheive it?