Hi,
DB2 V9.1 Z/OS
Please find the below query and help me to solve it.
We have to fetch the result set based on the Quarter value
For ex. Please find below
based on the WORK_DATE it has two Dates,we have to fetch latest
Date with in the same Quarter(Please find below)
ACTUAL RESULT SET (FOR YEAR(WORK_DATE)=2014)
EXPECTED RESULT (FOR YEAR(WORK_DATE)=2014)
EXPECTED RESULT (FOR YEAR(WORK_DATE)=2013)
EXPECTED RESULT (FOR YEAR(WORK_DATE)=2012)
EXPECTED RESULT (FOR YEAR(WORK_DATE)=2011)
THANKS,
DB2 V9.1 Z/OS
Please find the below query and help me to solve it.
We have to fetch the result set based on the Quarter value
For ex. Please find below
Code:
BASE_TABLE
P_LOC P_CODE NO_FIRST VOL_NO WORK_DATE
AAA A11 111 2 2013-10-26
AAA A11 111 2 2013-12-16
based on the WORK_DATE it has two Dates,we have to fetch latest
Date with in the same Quarter(Please find below)
Code:
BASE_TABLE
P_LOC P_CODE NO_FIRST VOL_NO WORK_DATE
AAA A11 111 2 2013-12-16
Code:
WITH TEMP(P_LOC,P_CODE,NO_FIRST,VOL_NO,WORK_DATE)
VALUES ('AAA','A11','111',2,'2013-10-26')
('AAA','A11','111',2,'2013-12-16')
('AAA','A11','111',2,'2011-04-15')
('AAA','A11','111',2,'2011-05-12')
('AAA','B22','111',96,'2010-01-16')
('AAA','B22','111',96,'2010-02-06')
('AAA','B22','111',96,'2010-03-26')
('AAA','B22','111',96,'2009-04-01')
AS(
SELECT
P_LOC
,P_CODE
,NO_FIRST
,VOL_NO
,ROW_NUMBER
OVER(PARTITION BY
P_LOC
,P_CODE
,NO_FIRST
,YEAR(WORK_DATE)
,QUARTER(WORK_DATE)
ORDER BY WORK_DATE DESC)AS RN
FROM BASE_TABLE
WHERE
P_LOC ='AAA'
AND NO_FIRST='111'
AND YEAR(WORK_DATE)='2014'
AND RN=1
)
Code:
BASE_TABLE
P_LOC P_CODE NO_FIRST VOL_NO WORK_DATE
AAA A11 111 2 2013-10-26
AAA A11 111 2 2013-12-16
AAA A11 111 2 2011-04-15
AAA A11 111 2 2011-05-12
AAA B22 111 96 2010-01-16
AAA B22 111 96 2010-02-06
AAA B22 111 96 2010-03-26
AAA B22 111 96 2009-04-01
Code:
P_LOC P_CODE NO_FIRST VOL_NO WORK_DATE RN
AAA A11 111 2 2013-12-16 1
AAA A11 111 2 2011-05-12 1
AAA B22 111 96 2010-03-26 1
AAA B22 111 96 2009-04-01 1
EXPECTED RESULT (FOR YEAR(WORK_DATE)=2014)
Code:
P_LOC P_CODE NO_FIRST VOL_NO WORK_DATE
AAA A11 111 2 2013-12-16
AAA A11 111 2 2011-05-12
AAA B22 111 96 2010-03-26
Code:
P_LOC P_CODE NO_FIRST VOL_NO WORK_DATE
AAA A11 111 2 2013-12-16
AAA A11 111 2 2011-05-12
AAA B22 111 96 2010-03-26
EXPECTED RESULT (FOR YEAR(WORK_DATE)=2012)
Code:
P_LOC P_CODE NO_FIRST VOL_NO WORK_DATE
AAA A11 111 2 2011-05-12
AAA B22 111 96 2010-03-26
Code:
P_LOC P_CODE NO_FIRST VOL_NO WORK_DATE
AAA A11 111 2 2011-05-12
AAA B22 111 96 2010-03-26