메뉴 여닫기
개인 메뉴 토글
로그인하지 않음
만약 지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

효율적인 SQL 작성법

SQL 용어 설명

SQL 구성 용어
용어 정의
예약어 SOL에서 사용하도록 DB 엔진에서 예약된 단어(Reserved Words)

ex) SELECT, UPDATE, INSERT, DELETE, FROM, SET, WHERE

식별자 테이블 또는 컬럼 식별자(Identifier)

ex) 테이블명, 컬럼명, ALIAS 등

연산자 계산 및 비교에 사용되는 연산자

ex) >, <, =, +, -, BETWEEN, IN, EXISTS

스칼라 쿼리 SELECT 절에 사용되는 서브쿼리(SUB-OUERY)를 스칼라(SCALAR) 쿼리라고 함

ex) SELECT (SELECT NVL(AA,1) FROM TB AA) AS COLI .... FROM DUAL;

인라인뷰 FROM 절에 사용되는 서브쿼리(SUB-QUERY)를 인라인뷰(INLINE VIEW)라고 함

ex) SELECT .. FROM (SELECT COLT FROM TB BB) A WHERE A.COL1 = 1'

서브쿼리 WHERE 절에 사용되는 서브쿼리(SUB-QUERY)를 서브쿼리라고 함

ex) SELECT. FROM TBLAA WHERE EXISTS (SELECT 1 FROM TB CC WHERE.

함수 DBMS에서 기본적으로 제공하는 함수

ex) CASE, SUM, TO_CHAR

변수 SOL에 사용되는 변수명(바인드 변수)

ex) #(loanNo)










SQL 작성 규칙

  1. SQL 작성은 ORACLE 표준에 따라 작성하고, ANSI SOL은 사용하지 않는다.
  2. 전체 대문자 작성을 원칙으로 한다. (SQL ID, 바인드 변수는 예외)
  3. 한 라인(행)의 최대 길이는 100열 이내로 한다. 복잡한 연산 등으로 인해 최대 길이가 100열을 초과할 경우 다음 라인을 사용하되 연산자가 아닌 컬럼명이나 괄호로 시작하도록 하고 컬럼 시작 위치를 정렬시킨다.
  4. 성능 이슈 발생 시 신속한 식별 및 조치가 가능하도록 모든 SOL에는 반드시 아래의 형식에 따라 SOL 식별자를 명시하여야 하며, SOL의 선두 라인(1행)에 작성한다.
    ※ 작성 형식:/* [작성자ID]:[Namespace] [SQL ID]
    ex) /* 홍길동: AB.cstNoBasEbi.cstService.retvlstcomcd
    작성자 ID +
    프로젝트 투입 시 부여된 계정정보
    ②mapper namespace
    "NAX-TS-AN-06(개발표준 정의서).docx"의
    ③ SOL ID
    SQL MAP 작성 표준 참조
  5. 힌트(HINT)는 SELECT, UPDATE, DELETE, INSERT 구문과 같은 라인에 작성하고 튜너/DBA의 사전검토를 거치지 않은 임의의 힌트구문 사용은 금지한다.
    ex) SELECT /*+ LEADING(A) USE_NL(B) */