1. LPAD, RPAD
2. REGEXP_COUNT()
REGEXP_COUNT()- 문자열에 대문자 A가 몇 개인지 찾아주는 것
SELECT REGEXP_COUNT(TEXT, 'A') FROM TEXTTABLE
https://itprogramming119.tistory.com/entry/Oracle-42-REGEXPCOUNT-%ED%95%A8%EC%88%98
3. WITH 절
임시테이블, 가상테이블로 반복되는 서브쿼리 블록을 하나의 WITH절로 만들 때 보통 사용
1) Materialize 방식, 임시 테이블을 생성 후 WITH절의 결과를 저장하며, 반복 호출시 쿼리를 실행하지 않고 임시 테이블에 저장된 결과를 사용
2) Inline 방식. 임시테이블 생성하지 않고, Inline View 형태로 수행, 참조된 횟수만큼 반복적으로 쿼리 실행
4. Dual 테이블
Dual 테이블 정의 : 간단하게 함수 이용해서 계산 결과값을 확인할 때 사용
- SELECT 시퀀스.NEXTVAL FROM DUAL;
- SELECT SYSDATE FROM DUAL;
- SELECT CURRENT_DATE FROM DUAL;
https://goddaehee.tistory.com/92
5. START WITH, CONNECT BY, CONNECT BY LEVEL
https://coding-factory.tistory.com/461
https://meyouus.tistory.com/175
6. CASE 절 > DECODE
CASE 뒤에 비교할 칼럼을 입력하고, WHEN 뒤에 값을 입력해 놓으면됨.
ex)
SELECT name,
depth,
CASE deptno
WHEN 10 THEN 'New York'
WHEN 20 THEN 'Dallas'
ELSE 'Unknown'
END AS loc_name
FROM table
7. WHERE 1=1
https://hyjykelly.tistory.com/5
https://dejavuhyo.github.io/posts/why-avoid-using-the-dynamic-query-where-1=1/
8. ORDER BY 1 2 3
첫 번째, 두 번째, 세 번째 칼럼 순으로 asc
https://wakestand.tistory.com/309
https://kkh0977.tistory.com/420
9. NVL, NVL 2, DECODE, SUBSTR, REGEXP_SUBSTR
NVL 함수는 값이 NULL인 경우 지정값을 출력하고, NULL이 아니면 원래 값을 그대로 출력한다
NVL2 함수는 NULL이 아닌 경우 지정값1을 출력하고, NULL인 경우 지정값2를 출력한다.
https://good4uprin.tistory.com/11
10. TRUNC
TRUNC 함수는 주로 소수점 절사 및 날짜의 시간을 없앨 때 사용한다.
11. 오라클 조인, 안시조인
12. merge into
13. Paging 처리
<include refid="common.pagingHeaderSql" />
<!-- paging 처리 상단 -->
<sql id="pagingHeaderSql">
SELECT A.*
FROM (
SELECT ROWNUM AS RNUM, S.*
FROM
(
</sql>
<!-- paging 처리 하단 -->
<sql id="pagingFooterSql">
) S
) A
WHERE A.RNUM BETWEEN ((#{size} * (#{page}-1)) + 1) AND (#{size} * #{page})
</sql>
<include refid="common.pagingFooterSql" />
14. Between
15. Sequence
'CS > DataBase' 카테고리의 다른 글
ORACLE 프로시저 (0) | 2022.12.21 |
---|---|
MySQL data Directory의 위치 (0) | 2022.12.21 |
ORACLE CLOB vs. BLOB (0) | 2021.12.25 |
Redis (0) | 2021.08.11 |
MySQL 인덱스(Index) & 파티션Partition & Full-Text Search (0) | 2021.08.09 |