(새 문서: 개요 SQL 작성 표준 입력 조건별 SQL 작성 페이징 처리 채번 ROW LOCK 추가 가이드) |
편집 요약 없음 |
||
(사용자 2명의 중간 판 8개는 보이지 않습니다) | |||
1번째 줄: | 1번째 줄: | ||
개요 | # '''개요''' | ||
SQL 작성 표준 | ## 목적 | ||
입력 조건별 SQL 작성 | ##: 차세대 SI 구축 프로젝트의 SQL 작성에 대한 지침 문서로서 SQL의 가독성, 성능 및 유지보수를 고려하여 SQL 작성 표준 및 지침을 가이드한다. | ||
페이징 처리 | ## 적용범위 | ||
채번 | ##: 차세대 SI 구축 프로젝트에서 작성하는 신규 SQL을 대상으로 한다. | ||
ROW LOCK | # '''SQL 작성 표준''' | ||
추가 가이드 | ## SQL 구성 용어 | ||
##: SQL을 구성하는 주요 용어는 아래와 같다. | |||
{| class="wikitable" | |||
|+ | |||
|- | |||
! 용어 !! 정의 | |||
|- | |||
| 예약어 || SQL에서 사용하도록 DB 엔진에서 예약된 단어(Reserved Words) | |||
ex) SELECT ,UPDATE, INSERT, DELETE, FROM, SET, WHERE 등 | |||
|- | |||
| 식별자 || 테이블 또는 컬럼 식별자 (Identifier) | |||
ex) 테이블명, 컬럼명, alias 등 | |||
|- | |||
| 연산자 || 계산 및 비교에 사용되는 연산자 | |||
ex) >, <, =, +, -, BETWEEN, IN, EXISTS 등 | |||
|- | |||
|스칼라 쿼리||SELECT 절에 사용되는 서브쿼리를 스칼라 쿼리라고 함 | |||
ex) SELECT (SELECT NVL(AA,1) FROM TB AA) AS COL1 ... FROM DUAL; | |||
|- | |||
|인라인 뷰||FROM 절에 사용되는 서브쿼리를 인라인뷰라고 함 | |||
ex) SELECT ... FROM (SELECT COL1 FROM TB BB) A WHERE A.COL1 = '1'; | |||
|- | |||
|서브쿼리||WHERE 절에 사용되는 서브쿼리(SUB-QUERY)를 서브쿼리라고 함 | |||
ex) SELECT .. FROM TB_AA WHERE EXISTS (SELECT 1 FROM TB CC WHERE ...) | |||
|- | |||
|함수||DBMS에서 기본적으로 제공하는 함수 | |||
ex) CASE, SUM, TO_CHAR 등 | |||
|- | |||
|변수||SQL에 사용되는 변수 명(바인드 변수) | |||
ex) #{loanNo} 등 | |||
|} | |||
## SQL 공통 표준 | |||
##: 가독성 향상을 위해 SQL에 공통으로 적용되는 표준은 다음과 같다. | |||
##: [SQL 공통 표준 예시] | |||
##SELECT 절 | |||
##FROM 절 | |||
##WHERE 절 | |||
##기타 예약어(SELECT) | |||
##INSERT 문 | |||
##UPDATE 문 | |||
##DELETE 문 | |||
##SQL 성능 가이드 | |||
##사용 제한 가이드 | |||
#'''입력 조건별 SQL 작성''' | |||
##선택(Optional) 조건 처리 | |||
##선택 조건 처리 예시 | |||
##선택 조건 SQL 작성 | |||
#'''페이징 처리''' | |||
##페이징 처리 방식 | |||
#'''채번''' | |||
##채번방식 | |||
#'''ROW LOCK''' | |||
##SELECT ~ FOR UPDATE 사용 지침 | |||
#'''추가 가이드''' | |||
##업무별 테이블 권한 | |||
##테이블 Truncate | |||
##개인정보 비식별화(테스트 데이터변환) |
2025년 7월 24일 (목) 16:30 기준 최신판
- 개요
- 목적
- 차세대 SI 구축 프로젝트의 SQL 작성에 대한 지침 문서로서 SQL의 가독성, 성능 및 유지보수를 고려하여 SQL 작성 표준 및 지침을 가이드한다.
- 적용범위
- 차세대 SI 구축 프로젝트에서 작성하는 신규 SQL을 대상으로 한다.
- 목적
- SQL 작성 표준
- SQL 구성 용어
- SQL을 구성하는 주요 용어는 아래와 같다.
- SQL 구성 용어
용어 | 정의 |
---|---|
예약어 | SQL에서 사용하도록 DB 엔진에서 예약된 단어(Reserved Words)
ex) SELECT ,UPDATE, INSERT, DELETE, FROM, SET, WHERE 등 |
식별자 | 테이블 또는 컬럼 식별자 (Identifier)
ex) 테이블명, 컬럼명, alias 등 |
연산자 | 계산 및 비교에 사용되는 연산자
ex) >, <, =, +, -, BETWEEN, IN, EXISTS 등 |
스칼라 쿼리 | SELECT 절에 사용되는 서브쿼리를 스칼라 쿼리라고 함
ex) SELECT (SELECT NVL(AA,1) FROM TB AA) AS COL1 ... FROM DUAL; |
인라인 뷰 | FROM 절에 사용되는 서브쿼리를 인라인뷰라고 함
ex) SELECT ... FROM (SELECT COL1 FROM TB BB) A WHERE A.COL1 = '1'; |
서브쿼리 | WHERE 절에 사용되는 서브쿼리(SUB-QUERY)를 서브쿼리라고 함
ex) SELECT .. FROM TB_AA WHERE EXISTS (SELECT 1 FROM TB CC WHERE ...) |
함수 | DBMS에서 기본적으로 제공하는 함수
ex) CASE, SUM, TO_CHAR 등 |
변수 | SQL에 사용되는 변수 명(바인드 변수)
ex) #{loanNo} 등 |
- SQL 공통 표준
- 가독성 향상을 위해 SQL에 공통으로 적용되는 표준은 다음과 같다.
- [SQL 공통 표준 예시]
- SELECT 절
- FROM 절
- WHERE 절
- 기타 예약어(SELECT)
- INSERT 문
- UPDATE 문
- DELETE 문
- SQL 성능 가이드
- 사용 제한 가이드
- SQL 공통 표준
- 입력 조건별 SQL 작성
- 선택(Optional) 조건 처리
- 선택 조건 처리 예시
- 선택 조건 SQL 작성
- 페이징 처리
- 페이징 처리 방식
- 채번
- 채번방식
- ROW LOCK
- SELECT ~ FOR UPDATE 사용 지침
- 추가 가이드
- 업무별 테이블 권한
- 테이블 Truncate
- 개인정보 비식별화(테스트 데이터변환)