我想返回每一天的详细信息,但每天只能返回与最大ID_EXECN相关的详细信息。这里是我的代码:sql oracle - 每天返回最大值的天数
SELECT
T1.ID_EXECN,
T1.DT_HDG_EFF,
T1.ID_DERIV,
T1.CUSIP
FROM
(SELECT
he.ID_EXECN,
he.DT_HDG_EFF,
d.ID_DERIV,
d.ID_CUSIP AS CUSIP
FROM
(hdvsudbr.deriv_popltn d
INNER JOIN hdvsudbr.hdg_execn_job_deriv_popltn jdp
ON jdp.ID_DERIV = d.ID_DERIV
INNER JOIN hdvsudbr.hdg_execn_job hej
ON hej.ID_JOB = jdp.ID_JOB
INNER JOIN hdvsudbr.hdg_execn he
ON he.ID_EXECN = hej.ID_EXECN)
WHERE hej.CD_JOB_TYPE = 9
AND he.DT_HDG_EFF >=LAST_DAY(ADD_MONTHS(SYSDATE,-5))) T1
我的电流输出是这样的:
有些日子,有一个以上的ID_EXECN(两个,三个或更多)和一些日子恰好有一个ID_EXECN,所以最大的日子里有一个应该只是返回相同的一个。
ID_EXECN DT_HDG_EFF ID_DERV CUSIP
40 11/8/2016 1 Z800
40 11/8/2016 2 Z801
41 11/8/2016 1 Z800
41 11/8/2016 2 Z801
22 11/9/2016 1 Z800
22 11/9/2016 2 Z801
23 11/9/2016 1 Z800
23 11/9/2016 2 Z801
24 11/9/2016 1 Z800
24 11/9/2016 2 Z801
10 11/10/2016 1 Z800
10 11/10/2016 2 Z801
这是我试图获得输出,只需用最大ID_EXECN记录在指定日期:
ID_EXECN DT_HDG_EFF ID_DERV CUSIP
41 11/8/2016 1 Z800
41 11/8/2016 2 Z801
24 11/9/2016 1 Z800
24 11/9/2016 2 Z801
10 11/10/2016 1 Z800
10 11/10/2016 2 Z801
到目前为止,我刚才已经能够获取最大ID_EXECN为查询中的所有日子,在这种情况下是41,但这不是我想要的。我想每天的最大值。其他情况下,我的查询运行,但只是没有返回。