write sql query following table
amount year quarter
1000 2003 first
2000 2003 second
3000 2003 third
4000 2003 fourth
5000 2004 first
6000 2004 second
7000 2004 third
8000 2004 fourth
i want the output
year q1_amount q2_amount q3_amount q4_amount
2003 1000 2000 3000 4000
2004 5000 6000 7000 8000
can anybady help me to achieve the aboue result by using informatica.
thanks in advance.
Answers were Sorted based on User's Feedback
Answer / hari
select * from (select year,
max(amount,quarter='first') q1_amount,
max(amount,quarter='second') q3_amount,
max(amount,quarter='third') q4_amount,
max(amount,quarter='fourth') q4_amount
from table_name group by year );
| Is This Answer Correct ? | 2 Yes | 0 No |
Answer / ankit kansal
One way of doing it is simple using aggregate function.
select year,sum(case when quarter='first' then amount end) as q1_amount
,sum(case when quarter='second' then amount end) as q2_amount
,sum(case when quarter='third' then amount end) as q3_amount
,sum(case when quarter='fourth' then amount end) as q4_amount from test group by year;
http://deepinopensource.blogspot.in/
| Is This Answer Correct ? | 1 Yes | 0 No |
Select year,
sum(case when quarter = 'first' then amount end) AS q1_amount,
sum(case when quarter = 'second' then amount end) AS q2_amount,
sum(case when quarter = 'third' then amount end) AS q3_amount,
sum(case when quarter = 'fourth' then amount end) AS q4_amount
from table
group by year order by year
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / ankit kansal
on my previous answer i had given a solution using SQL query now i will give you using informatica.
1) Take Expression and create three four output ports.
(i) q1 o IIF(quater='first',amount,0)
--same for q2,q3,q4
2)In Next step use a AGG Trans.
(i) Again create four ports with group by on Year column
q1_amount sum(q1)
q2_amount sum(q2) ..
--same for q3 and q4
http://deepinopensource.blogspot.in/
| Is This Answer Correct ? | 0 Yes | 0 No |
SQL OVERRIDE :
SELECT * FROM TABLE_NAME PIVOT(MAX(AMOUNT) FOR QUARTER IN ('FIRST','SECOND','THIRD','FOURTH'));
| Is This Answer Correct ? | 0 Yes | 0 No |
How would you join a node to the already existing domain?
how to find the 5th highest salary form each department using 1.SQL Query 2. Informatica power center designer?
how to join the two flatfiles using the joiner t/r if there is no matching port?
i want to load data in to two targets..one is dimension table and the other is fact table?how can i load ata a time
What are the different threads in DTM process?
Tell me can we override a native sql query within informatica? Where do we do it? How do we do it?
I am new to informatica and learning it,can anybody please tell me how we receive source as flat file in informatica,from where we get this flat file?
I have source data like this col1 col2 col3 5 3 8 6 2 9 7 1 10 and i want to get target as col1 col2 col3 5 1 8 6 2 9 7 3 10 which transformation i have to use and how?
in my source i have 100 records, and 3 targets, i want to load 1st record into 1st target,2nd record into 2nd target,3rd record into 3rd target again 4th target into 1st target and vice versa,how to achieve this?
How to compare Source and Target table, without using dynamic lookup?
How to display last 5 records in a table ? With out Top key word and doing order by desc Advance thanks
What is the difference between the system variables $$$SessStartTime and SESSSTARTTIME?