공부한것들을 정리하는 블로그 입니다.
실제 사용하는 DB쿼리 응용 본문
반응형
개인보관용
* DATE형식의 컬럼 비교시에는 날짜 형식을 별도로 지정하지 않고 정규식으로 숫자만 남긴 후 변환하여 비교
NO_DT <= DECODE(:no_dt, NULL, SYSDATE, TO_DATE(REGEXP_REPLACE(:no_dt, '[^0-9]'), 'YYYYMMDD'))
* SQL조건이 optional 한 경우에는 decode문을 활용하여 처리
where DECODE(:num, null, '1', NUM) = DECODE(:num, null, '1', :NUM)
* DECODE 반복 최소화
#BEFORE
SELECT SUM( DECODE( market, 'D',
DECODE(type, '1', DECODE(unit 'A', 0.2*col,
'B', 0.5*col, ......
#AFTER
SELECT SUM( DECODE( market || type || unit, 'D1A', 0.2, 'D1B', 0.5 ...) *col)
반응형
'DB 공부' 카테고리의 다른 글
mysql/h2 Replication 적용해보기 (0) | 2022.10.27 |
---|---|
모니터링용 쿼리(지불수단 별 거래건수, 피크타임, 거래비) (0) | 2022.05.12 |
오라클 LEFR OUTER JOIN (0) | 2022.04.06 |
두 테이블비교 한쪽에 없는 값 추출 mysql left right outer join 서브쿼리 값사용 (0) | 2022.02.26 |
oracle execution plan 실행계획 순서 (0) | 2020.06.11 |
오라클 힌트(oracle hint) : FIRST_ROWS vs. FIRST_ROWS_N 그리고 Cost의 개념 (0) | 2020.05.15 |
오라클 실행계획 보는법 (0) | 2019.12.17 |
ORACLE과 MYSQL의 차이점 비교 (0) | 2019.11.29 |
Comments