728x90
반응형
SELECT
'설치' AS 분류,
EO_RQ_TP AS 요청유형,
CUST_CD,
CT.CUST_NM AS 고객사,
CR_CD,
CR.CR_SCD AS 고객번호,
EO_STAT_TP AS 요청상태,
STR_TO_DATE(CONCAT(RQ1_DT, RQ1_TM), '%Y%m%d%H%i') AS 완료요청일 -- 날짜와 시간을 결합하여 변환
FROM T_EO
JOIN CUSTOMER_TABLE CT ON T_EO.CUST_CD = CT.CUST_CD -- 고객사 정보 JOIN
JOIN CUSTOMER_RELATION_TABLE CR ON T_EO.CR_CD = CR.CR_CD -- 고객번호 정보 JOIN
WHERE RS_USER_CD = 로그인유저 -- 로그인한 유저 필터
AND RQ_DT = DATE_FORMAT(NOW(), '%Y%m%d') -- 오늘 날짜 필터 (문자열 형식으로 비교)
UNION ALL
SELECT
'계약' AS 분류,
CRCH_TP AS 요청유형,
CUST_CD,
CT.CUST_NM AS 고객사,
CR_CD,
CR.CR_SCD AS 고객번호,
CRCH_CLS_TP AS 요청상태,
STR_TO_DATE(CMP_REQ_DT, '%Y%m%d') AS 완료요청일 -- 날짜만 변환
FROM T_YH_CRCH
JOIN CUSTOMER_TABLE CT ON T_YH_CRCH.CUST_CD = CT.CUST_CD -- 고객사 정보 JOIN
JOIN CUSTOMER_RELATION_TABLE CR ON T_YH_CRCH.CR_CD = CR.CR_CD -- 고객번호 정보 JOIN
WHERE REQ_USER_CD = 로그인유저 -- 로그인한 유저 필터
AND RCV_DT = DATE_FORMAT(NOW(), '%Y%m%d') -- 오늘 날짜 필터 (문자열 형식으로 비교)
ORDER BY 완료요청일 ASC;
- 날짜와 시간 변환:
- STR_TO_DATE(CONCAT(RQ1_DT, RQ1_TM), '%Y%m%d%H%i'): RQ1_DT와 RQ1_TM을 결합한 후 STR_TO_DATE로 변환하여 완료요청일로 사용합니다.
- STR_TO_DATE(CMP_REQ_DT, '%Y%m%d'): CMP_REQ_DT를 STR_TO_DATE로 변환하여 완료요청일로 지정합니다.
- 날짜 필터 조건:
- DATE_FORMAT(NOW(), '%Y%m%d')를 사용해 오늘 날짜를 YYYYMMDD 형식의 문자열로 변환하여 RQ_DT와 RCV_DT와 비교합니다.
이 쿼리는 MySQL에서 완료요청일을 기준으로 데이터를 오름차순 정렬하여 출력합니다.
STR_TO_DATE로 문자열을 날짜데이터로 변환하여 정렬해준다.
728x90
반응형
'DB' 카테고리의 다른 글
[SQL] 문자열 리터럴에 작은 따옴표를 사용해야 하는 이유 (0) | 2024.11.14 |
---|---|
[Mybatis] 숫자 컬럼인데 값이 0일때 컬럼값 != null and 컬럼값 !='' 을 통과하지 못해서 값이 없는 것으로 처리될때 (0) | 2024.11.03 |
[DB][Oracle] 날짜+시간 문자열과 날짜문자열 비교하기 (0) | 2024.10.22 |
[DB][SQL] 01월 ~ 12월 데이터가 없어도 조회하기 (1) | 2024.10.16 |
[DB][Oracle] 여러행 삽입하기 (0) | 2024.09.29 |