ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [SQL] ANSI SQL 이란?
    DB/SQL 2023. 6. 15. 10:35

     

     

     

     

    📑 ANSI SQL이란? 

     

    ANSI, American National Standards Institute(미국 표준 협회)가 각기 다른 DBMS(Oracle, My-SQL, DB2)등등 에사 공통적으로 사용할 수 있도록 고안한 표준 SQL문 작성 방법 

     

      장점 단점
    ANSI SQL - 표준 SQL 문법이기 때문에 거의 대부분의 DBMS에서 작동이 가능하다.
    - JOIN과 WHERE 절이 분리되어 있어 더욱 직관적으로 쿼리를 분석할 수 있다. 
    DBMS 내부의 함수를 사용하는 경우 ANSI 문법만으로 쿼리 작성이 불가능한 경우가 있다. 

     

     

    📑 ANSI SQL 사용 예시

     

    -- ORACLE
    SELECT a.name,
           b.name
    FROM STUDENTS a,
         TEACHERS b
    WHERE a.class_no = b.class_no
    
    -- ANSI
    SELECT a.name,
           b.name
    FROM STUDENTS a JOIN TEACHERS b
          ON a.class_no = b.class_no

     

     

     

    📑 ANSI 형태의 query 표준 예제 

     

    1. 모든 컬럼별 AS 지정 

    - 향후 내부 로직 및 지정컬럼 변경 시 유용

     

    2. INNER 테이블 조인 들여쓰기 

    -  Driving 테이블 좌측에 INNER/LEFT/FULL 구문 들여쓰기 맞춤

    - ON 및 조인조건은 테이블 정의 후 1탭 추가 

    - 테이블별 WHERE 조건은 조인 구문에 기재

     

    3. 콤마는 다음행 좌측에 기재 

    - 향후 수정 및 테스트시 주석 처리에 유용

     

    4. 테이블 뒤에 WITH(NOLOCK) 키워드

    - MS-SQL은 SELECT 시 공유잠금 발생

    - 공유 잠금 : 대상 테이블에 INSERT, UPDATE, DELETE 문 수행시 작업이 종료될 때까지 SELECT 작업에 LOCK 발생

    - 테이블 뒤 WITH(NOLOCK) 키워드 사용시 선행작업과 무관하게 SELECT문 수행 가능 

     

     


     

     

    [참고]

    https://easybrother0103.tistory.com/137, https://m.blog.naver.com/sanguineous/221770198274

    반응형

    'DB > SQL' 카테고리의 다른 글

    [sql] alias 사용  (0) 2022.12.13
    [SQL] 목록 조회하기, Inner Join, outer join  (0) 2022.12.11

    댓글

Designed by Tistory.