INSERT INTO lgn_hstry (
lgn_id
, lgn_type
, cntn_dt
, cntn_ip
, cntn_oper_sysm
, dvc_nm
, brwsr_nm
) VALUES (
#{lgnId}
, #{lgnType}
, NOW()
, #{cntnIp}
, #{cntnOperSysm}
, #{dvcNm}
, #{brwsrNm}
)
SELECT lh.lgn_id
, lh.lgn_type
, TO_CHAR(lh.cntn_dt, 'YYYY-MM-DD HH24:MI') AS cntn_dt
, lh.cntn_ip
, lh.cntn_oper_sysm
, lh.dvc_nm
, lh.brwsr_nm
FROM lgn_hstry AS lh
AND lh.cntn_dt >= #{startDt}::timestamp
AND #{endDt}::timestamp >= lh.cntn_dt
AND lh.lgn_type = (SELECT CASE cm.cd_nm
WHEN '관리자' THEN '0'
WHEN '사용자' THEN '1'
ELSE ''
END
FROM cd_mng AS cm
WHERE cm.use_yn = 'Y'
AND cm.up_cd = 'lgnHstryType'
AND cm.cd_nm LIKE '%' || #{searchText} || '%')
AND lh.lgn_id LIKE '%' || #{searchText} || '%'
AND (
lh.lgn_type = (SELECT CASE cm.cd_nm
WHEN '관리자' THEN '0'
WHEN '사용자' THEN '1'
ELSE ''
END
FROM cd_mng AS cm
WHERE cm.use_yn = 'Y'
AND cm.up_cd = 'lgnHstryType'
AND cm.cd_nm LIKE '%' || #{searchText} || '%')
OR
lh.lgn_id LIKE '%' || #{searchText} || '%'
)