2023-09-12 16:53 쿼리 수정

This commit is contained in:
myname 2023-09-12 16:53:30 +09:00
parent b07606e95e
commit 3ecca31cf9
3 changed files with 85 additions and 57 deletions

View File

@ -166,7 +166,11 @@
AND a0.code =a.aprvl_cd AND a0.code =a.aprvl_cd
) )
AS aprvlCd AS aprvlCd
, IF(A.APRVL_CD = '60', TO_CHAR(A.APRVL_PNTTM, 'YYYY.MM.DD'), '-') AS aprvlPnttm /*
, IF(A.APRVL_CD = '60', TO_CHAR(A.APRVL_PNTTM, 'YYYY.MM.DD'), '-') AS aprvlPnttm
*/
, CASE WHEN A.APRVL_CD = '60' THEN TO_CHAR(A.APRVL_PNTTM, 'YYYY.MM.DD') ELSE '-' END AS aprvlPnttm
, A.frst_Regist_Pnttm AS frstRegistPnttm , A.frst_Regist_Pnttm AS frstRegistPnttm
@ -215,14 +219,17 @@
, A.ADMIN_UPDT_YN AS adminUpdtYn , A.ADMIN_UPDT_YN AS adminUpdtYn
,( ,(
SELECT SELECT
CASE WHEN COUNT(*) > 1 THEN S2.PRCS_NM || '외' || (COUNT(*)-1) MAX(S2.PRCS_NM)||
ELSE S2.PRCS_NM END AS PRCS_NM CASE WHEN COUNT(*) > 1 THEN '외' || (COUNT(*)-1)
ELSE '' END AS PRCS_NM
FROM VE_EDU_APLCT_ONLN S1 INNER JOIN VE_PRCS S2 FROM VE_EDU_APLCT_ONLN S1 INNER JOIN VE_PRCS S2
ON S1.PRCS_ORD = S2.PRCS_ORD ON S1.PRCS_ORD = S2.PRCS_ORD
WHERE 1=1 WHERE 1=1
AND S1.EDU_APLCT_ORD = A.EDU_APLCT_ORD AND S1.EDU_APLCT_ORD = A.EDU_APLCT_ORD
GROUP BY S1.EDU_APLCT_ORD GROUP BY S1.EDU_APLCT_ORD
/*
ORDER BY S1.PRCS_ORD ORDER BY S1.PRCS_ORD
*/
) AS prcsGroupNm ) AS prcsGroupNm
, A.INSTT_DIV_CD AS insttDivCd , A.INSTT_DIV_CD AS insttDivCd
, A.FRST_REGISTER_ID AS frstRegisterId , A.FRST_REGISTER_ID AS frstRegisterId
@ -335,6 +342,7 @@
, g.edu_strt_dt AS eduStrtDt , g.edu_strt_dt AS eduStrtDt
, g.edu_end_dt AS eduEndDt , g.edu_end_dt AS eduEndDt
/*
, IF(A.APRVL_CD='20' , IF(A.APRVL_CD='20'
and and
( (
@ -346,17 +354,17 @@
INNER JOIN ve_prcs_onln_cntnt c0 INNER JOIN ve_prcs_onln_cntnt c0
ON c0.prcs_onln_cntnt_ord = a0.prcs_onln_cntnt_ord ON c0.prcs_onln_cntnt_ord = a0.prcs_onln_cntnt_ord
WHERE 1 =1 WHERE 1 =1
AND a0.edu_aplct_ord =A.EDU_APLCT_ORD AND a0.edu_aplct_ord =A.EDU_APLCT_ORD
/*
AND IFNULL(a0.sbmt_yn,'N')='Y'
*/
AND NVL(a0.sbmt_yn,'N')='Y' AND NVL(a0.sbmt_yn,'N')='Y'
)>0 )>0
, g.edu_reg_dt , g.edu_reg_dt
, '' , ''
) AS eduRegDt ) AS eduRegDt
*/
/*
, IF(A.APRVL_CD='20' , IF(A.APRVL_CD='20'
and and
( (
@ -368,36 +376,22 @@
INNER JOIN ve_prcs_onln_cntnt c0 INNER JOIN ve_prcs_onln_cntnt c0
ON c0.prcs_onln_cntnt_ord = a0.prcs_onln_cntnt_ord ON c0.prcs_onln_cntnt_ord = a0.prcs_onln_cntnt_ord
WHERE 1 =1 WHERE 1 =1
AND a0.edu_aplct_ord =A.EDU_APLCT_ORD AND a0.edu_aplct_ord =A.EDU_APLCT_ORD
/*
AND IFNULL(a0.sbmt_yn,'N')='Y'
*/
AND NVL(a0.sbmt_yn,'N')='Y' AND NVL(a0.sbmt_yn,'N')='Y'
)>0 )>0
and length(g.edu_strt_dt)=8 and length(g.edu_strt_dt)=8
and length(g.edu_end_dt)=8 and length(g.edu_end_dt)=8
/*
, CONCAT(
SUBSTRING(g.edu_strt_dt,1,4), '.', SUBSTRING(g.edu_strt_dt,5,2), '.', SUBSTRING(g.edu_strt_dt,7,2)
, '~'
, SUBSTRING(g.edu_end_dt,1,4), '.', SUBSTRING(g.edu_end_dt,5,2), '.', SUBSTRING(g.edu_end_dt,7,2)
)
*/
, ,
SUBSTRING(g.edu_strt_dt,1,4) || '.' || SUBSTRING(g.edu_strt_dt,5,2) || '.' || SUBSTRING(g.edu_strt_dt,7,2) SUBSTRING(g.edu_strt_dt,1,4) || '.' || SUBSTRING(g.edu_strt_dt,5,2) || '.' || SUBSTRING(g.edu_strt_dt,7,2)
|| '~' || '~'
|| SUBSTRING(g.edu_end_dt,1,4) || '.' || SUBSTRING(g.edu_end_dt,5,2) || '.' || SUBSTRING(g.edu_end_dt,7,2) || SUBSTRING(g.edu_end_dt,1,4) || '.' || SUBSTRING(g.edu_end_dt,5,2) || '.' || SUBSTRING(g.edu_end_dt,7,2)
/*
, CONCAT(
DATE_FORMAT(TO_DATE(g.edu_strt_dt,'yyyymmdd'),'%Y.%m.%d')
,'~'
, DATE_FORMAT(TO_DATE(g.edu_end_dt,'yyyymmdd'),'%Y.%m.%d')
)
*/
, '' , ''
) AS eduDt ) AS eduDt
*/
FROM VE_EDU_APLCT A LEFT OUTER JOIN ( FROM VE_EDU_APLCT A LEFT OUTER JOIN (
SELECT SELECT
@ -421,9 +415,18 @@
EDU_APLCT_ORD EDU_APLCT_ORD
,EDU_CHASI_ORD ,EDU_CHASI_ORD
,SUM(lrn_tm) AS lrn_tm ,SUM(lrn_tm) AS lrn_tm
,MIN(REPLACE(IF(EDU_HOPE_DT IS NULL OR EDU_HOPE_DT = '', NULL, EDU_HOPE_DT), '.', '')) AS EDU_HOPE_DT ,MIN(
REPLACE(
/*
IF(EDU_HOPE_DT IS NULL OR EDU_HOPE_DT = '', NULL, EDU_HOPE_DT)
*/
CASE WHEN EDU_HOPE_DT IS NULL OR EDU_HOPE_DT = '' THEN NULL ELSE EDU_HOPE_DT END
, '.'
, ''
)
) AS EDU_HOPE_DT
FROM VE_EDU_CHASI FROM VE_EDU_CHASI
GROUP BY EDU_APLCT_ORD GROUP BY EDU_APLCT_ORD, EDU_CHASI_ORD
) CC ON A.EDU_APLCT_ORD = CC.EDU_APLCT_ORD ) CC ON A.EDU_APLCT_ORD = CC.EDU_APLCT_ORD
LEFT OUTER JOIN COMVNUSERMASTER D LEFT OUTER JOIN COMVNUSERMASTER D
ON A.USER_ID = D.USER_ID ON A.USER_ID = D.USER_ID
@ -1014,6 +1017,7 @@
ROWNUM AS rowNo , ROWNUM AS rowNo ,
aa.* aa.*
/*
, IF(aa.aprvlCd='20' , IF(aa.aprvlCd='20'
AND aa.isEndCnt > 0 AND aa.isEndCnt > 0
and length(aa.eduStrtDt)=8 and length(aa.eduStrtDt)=8
@ -1026,7 +1030,14 @@
, '' , ''
) AS eduDt ) AS eduDt
*/
, CASE WHEN aa.aprvlCd='20' AND aa.isEndCnt > 0 and length(aa.eduStrtDt)=8 and length(aa.eduEndDt)=8
THEN SUBSTRING(aa.eduStrtDt,1,4) || '.' || SUBSTRING(aa.eduStrtDt,5,2) || '.' || SUBSTRING(aa.eduStrtDt,7,2)
|| '~'
|| SUBSTRING(aa.eduEndDt,1,4) || '.' || SUBSTRING(aa.eduEndDt,5,2) || '.' || SUBSTRING(aa.eduEndDt,7,2)
ELSE '' END
AS eduDt
FROM ( FROM (
SELECT SELECT
@ -1046,14 +1057,16 @@
c.email , c.email ,
/*이수과정명*/ /*이수과정명*/
( SELECT S2.PRCS_NM ( SELECT MAX(S2.PRCS_NM)
FROM VE_EDU_APLCT_ONLN S1 FROM VE_EDU_APLCT_ONLN S1
INNER JOIN VE_PRCS S2 INNER JOIN VE_PRCS S2
ON S1.PRCS_ORD = S2.PRCS_ORD ON S1.PRCS_ORD = S2.PRCS_ORD
WHERE 1 =1 WHERE 1 =1
AND S1.EDU_APLCT_ORD = c.EDU_APLCT_ORD AND S1.EDU_APLCT_ORD = c.EDU_APLCT_ORD
GROUP BY S1.EDU_APLCT_ORD GROUP BY S1.EDU_APLCT_ORD
/*
ORDER BY S1.PRCS_ORD ORDER BY S1.PRCS_ORD
*/
) )
AS prcsGroupNm , AS prcsGroupNm ,
@ -1178,7 +1191,7 @@
</isNotEmpty> </isNotEmpty>
ORDER BY 1 =1 ORDER BY 1
/* /*
ORDER BY 1 =1 ORDER BY 1 =1
, AA.sbmtPnttm DESC , AA.sbmtPnttm DESC
@ -1192,7 +1205,10 @@
, $orderByQuery$ , $orderByQuery$
</isNotEmpty> </isNotEmpty>
<isNotEqual property="mode" compareValue="EXCEL"> <isNotEqual property="mode" compareValue="EXCEL">
LIMIT #recordCountPerPage# OFFSET #firstIndex# /*
LIMIT recordCountPerPage OFFSET firstIndex
*/
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</isNotEqual> </isNotEqual>

View File

@ -36,9 +36,9 @@
A.PRCS_NM AS prcsNm, A.PRCS_NM AS prcsNm,
A.PRCS_CN AS prcsCn, A.PRCS_CN AS prcsCn,
A.PRCS_SORT_NO AS prcsSortNo, A.PRCS_SORT_NO AS prcsSortNo,
DATE_FORMAT(A.FRST_REGIST_PNTTM,'%Y-%m-%d') AS frstRegistPnttm, TO_CHAR(A.FRST_REGIST_PNTTM,'YYYY-MM-DD') AS frstRegistPnttm,
A.FRST_REGISTER_ID AS frstRegisterId, A.FRST_REGISTER_ID AS frstRegisterId,
DATE_FORMAT(A.LAST_UPDT_PNTTM,'%Y-%m-%d') AS lastUpdtPnttm, TO_CHAR(A.LAST_UPDT_PNTTM,'YYYY-MM-DD') AS lastUpdtPnttm,
A.LAST_UPDUSR_ID AS lastUpdusrId, A.LAST_UPDUSR_ID AS lastUpdusrId,
A.LCTR_DIV_CD AS lctrDivCd, A.LCTR_DIV_CD AS lctrDivCd,
A.USE_YN AS useYn A.USE_YN AS useYn
@ -68,6 +68,7 @@
<!-- 강사 정보 R --> <!-- 강사 정보 R -->
<select id="VEPrcsDAO.selectDetail" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO"> <select id="VEPrcsDAO.selectDetail" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
/* VEPrcsDAO.selectDetail */
SELECT SELECT
<include refid="VEPrcsDAO.select_column_name"/> <include refid="VEPrcsDAO.select_column_name"/>
FROM FROM
@ -121,6 +122,7 @@
<!-- 강사 정보 L --> <!-- 강사 정보 L -->
<select id="VEPrcsDAO.selectList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO"> <select id="VEPrcsDAO.selectList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
/* VEPrcsDAO.selectList */
SELECT <include refid="VEPrcsDAO.select_column_name"/> SELECT <include refid="VEPrcsDAO.select_column_name"/>
, B.CNT , B.CNT
FROM <include refid="VEPrcsDAO.table_name"/> A , FROM <include refid="VEPrcsDAO.table_name"/> A ,
@ -140,6 +142,7 @@
</select> </select>
<select id="VEPrcsDAO.selectTngrPrcsList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO"> <select id="VEPrcsDAO.selectTngrPrcsList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
/* VEPrcsDAO.selectTngrPrcsList */
SELECT SELECT
<include refid="VEPrcsDAO.select_column_name"/> <include refid="VEPrcsDAO.select_column_name"/>
FROM <include refid="VEPrcsDAO.table_name"/> A FROM <include refid="VEPrcsDAO.table_name"/> A
@ -149,6 +152,7 @@
</select> </select>
<select id="VEPrcsDAO.selectMberEduAplctPrcsList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO"> <select id="VEPrcsDAO.selectMberEduAplctPrcsList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
/* VEPrcsDAO.selectMberEduAplctPrcsList */
SELECT SELECT
<include refid="VEPrcsDAO.select_column_name"/> <include refid="VEPrcsDAO.select_column_name"/>
, c.cnt , c.cnt
@ -168,6 +172,7 @@
<!-- 강사 정보 L page --> <!-- 강사 정보 L page -->
<select id="VEPrcsDAO.selectPagingList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO"> <select id="VEPrcsDAO.selectPagingList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
/* VEPrcsDAO.selectPagingList */
SELECT SELECT
COUNT(1) OVER() AS totCnt , COUNT(1) OVER() AS totCnt ,
<include refid="VEPrcsDAO.select_column_name"/> <include refid="VEPrcsDAO.select_column_name"/>
@ -222,7 +227,7 @@
AND TO_CHAR(a.FRST_REGIST_PNTTM, 'YYYYMMDD') <![CDATA[ <= ]]> REPLACE(#searchSmbtEndDt#, '.' , '') AND TO_CHAR(a.FRST_REGIST_PNTTM, 'YYYYMMDD') <![CDATA[ <= ]]> REPLACE(#searchSmbtEndDt#, '.' , '')
</isNotEmpty> </isNotEmpty>
ORDER BY 1=1 ORDER BY 1
, (a.prcs_sort_no * 1) , (a.prcs_sort_no * 1)
<isEmpty property="orderByQuery"> <isEmpty property="orderByQuery">
, a.prcs_ord desc , a.prcs_ord desc
@ -230,10 +235,11 @@
<isNotEmpty property="orderByQuery"> <isNotEmpty property="orderByQuery">
, $orderByQuery$ , $orderByQuery$
</isNotEmpty> </isNotEmpty>
/*
LIMIT recordCountPerPage OFFSET firstIndex
LIMIT #recordCountPerPage# OFFSET #firstIndex# */
OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY;
</select> </select>
<sql id="VEPRCSDAO.EDU_PRCS_JOIN"> <sql id="VEPRCSDAO.EDU_PRCS_JOIN">
@ -247,6 +253,7 @@
</sql> </sql>
<select id="VEPrcsDAO.selectPrcsList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO"> <select id="VEPrcsDAO.selectPrcsList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
/* VEPrcsDAO.selectPrcsList */
SELECT SELECT
(SELECT COUNT(1) FROM VE_PRCS_ONLN_CNTNT WHERE PRCS_ORD = A.PRCS_ORD) AS chasiCnt, (SELECT COUNT(1) FROM VE_PRCS_ONLN_CNTNT WHERE PRCS_ORD = A.PRCS_ORD) AS chasiCnt,
COUNT(A.PRCS_DIV) OVER(PARTITION BY A.PRCS_DIV) AS rowCnt, COUNT(A.PRCS_DIV) OVER(PARTITION BY A.PRCS_DIV) AS rowCnt,
@ -277,6 +284,7 @@
<select id="VEPrcsDAO.selectPrcsDetailList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO"> <select id="VEPrcsDAO.selectPrcsDetailList" parameterClass="VEPrcsDetailVO" resultClass="VEPrcsDetailVO">
/* VEPrcsDAO.selectPrcsDetailList */
SELECT SELECT
COUNT(A.PRCS_DIV) OVER(PARTITION BY A.PRCS_DIV) AS rowCnt, COUNT(A.PRCS_DIV) OVER(PARTITION BY A.PRCS_DIV) AS rowCnt,
COUNT(C.PRCS_ORD) OVER(PARTITION BY A.PRCS_ORD) AS rowDtlCnt, COUNT(C.PRCS_ORD) OVER(PARTITION BY A.PRCS_ORD) AS rowDtlCnt,

View File

@ -909,19 +909,22 @@
<select id="VESttstMIXDAO.selectEduContentYear" parameterClass="SttsVO" resultClass="SttsVO"> <select id="VESttstMIXDAO.selectEduContentYear" parameterClass="SttsVO" resultClass="SttsVO">
/* VESttstMIXDAO.selectEduContentYear */ /* VESttstMIXDAO.selectEduContentYear */
SELECT SELECT eduYear
SUBSTRING(b.edu_strt_dt,1,4) AS eduYear FROM (
FROM SELECT
ve_prcs a SUBSTRING(b.edu_strt_dt,1,4) AS eduYear
LEFT OUTER JOIN FROM
ve_prcs_cmplt_detail b ve_prcs a
ON a.prcs_ord = b.prcs_ord LEFT OUTER JOIN
LEFT OUTER JOIN ve_prcs_cmplt_detail b
ve_edu_aplct c ON a.prcs_ord = b.prcs_ord
ON ( b.edu_aplct_ord = c.edu_aplct_ord LEFT OUTER JOIN
AND c.aprvl_cd = '20') ve_edu_aplct c
GROUP BY eduYear ON ( b.edu_aplct_ord = c.edu_aplct_ord
HAVING eduYear IS NOT NULL AND c.aprvl_cd = '20')
)aa
GROUP BY aa.eduYear
HAVING aa.eduYear IS NOT NULL
</select> </select>
<select id="VESttstMIXDAO.selectEduContentCnt" parameterClass="SttsVO" resultClass="SttsVO"> <select id="VESttstMIXDAO.selectEduContentCnt" parameterClass="SttsVO" resultClass="SttsVO">
@ -986,7 +989,7 @@
WHERE 1 =1 WHERE 1 =1
AND A.lctr_div_cd = '40' AND A.lctr_div_cd = '40'
GROUP BY a.prcs_ord GROUP BY a.prcs_ord
, SUBSTRING(TO_CHAR(b.sbmt_pnttm,'YYYYMMDD'),1,6) , SUBSTRING(TO_CHAR(b.sbmt_pnttm,'YYYYMMDD'),5,2)
/* /*
SELECT SELECT
a.prcs_ord AS prcsOrd, a.prcs_ord AS prcsOrd,
@ -1008,11 +1011,12 @@
GROUP BY a.prcs_ord, SUBSTRING(b.edu_strt_dt,1,6) GROUP BY a.prcs_ord, SUBSTRING(b.edu_strt_dt,1,6)
*/ */
) Z ) Z
GROUP BY Z.prcsOrd GROUP BY Z.prcsOrd, z.prcsNm
ORDER BY Z.prcsOrd DESC ORDER BY Z.prcsOrd DESC
</select> </select>
<select id="VESttstMIXDAO.selectEduContentCnt2" parameterClass="SttsVO" resultClass="SttsVO"> <select id="VESttstMIXDAO.selectEduContentCnt2" parameterClass="SttsVO" resultClass="SttsVO">
/* VESttstMIXDAO.selectEduContentCnt2 */
SELECT SELECT
prcsOrd prcsOrd
,prcsNm ,prcsNm
@ -1075,7 +1079,7 @@
WHERE 1 =1 WHERE 1 =1
AND A.lctr_div_cd = '40' AND A.lctr_div_cd = '40'
GROUP BY a.prcs_ord GROUP BY a.prcs_ord
, SUBSTRING(TO_CHAR(b.sbmt_pnttm,'YYYYMMDD'),1,6) , SUBSTRING(TO_CHAR(b.sbmt_pnttm,'YYYYMMDD'),5,2)
/* /*
SELECT SELECT
a.prcs_ord AS prcsOrd, a.prcs_ord AS prcsOrd,
@ -1097,7 +1101,7 @@
GROUP BY a.prcs_ord, SUBSTRING(b.edu_strt_dt,1,6) GROUP BY a.prcs_ord, SUBSTRING(b.edu_strt_dt,1,6)
*/ */
) Z ) Z
GROUP BY Z.prcsOrd GROUP BY Z.prcsOrd, Z.prcsNm
ORDER BY Z.prcsOrd DESC ORDER BY Z.prcsOrd DESC
</select> </select>
</sqlMap> </sqlMap>