본문 바로가기
SQL

SQLD 핵심 요약

by CodingKwon 2022. 8. 22.

SELECT 문

  • FROM절에서 테이블 앨리어스를 지정할 때 AS를 사용하지 못한다.
  • 비교 연산 시 비교 칼럼의 값이 NULL인 행은 결과집합에서 제외한다.
  • ORDER BY절에 테이블 내의 칼럼명을 기재하면 칼럼값을 기준으로 정렬하고 칼럼 앨리어스를 기재하면 칼럼 앨리어스의 값을 가지고 정렬한다.

 

집계합수

  • 공집합일 경우 MAX 함수를 써서 단 1건이라도 출력하게 할 수 있다.
  • SELECT절에서 집계 함수 이용 시 집계 함수를 이용하지 않은 칼럼은 GROUP BY절에 기재해야 한다.

 

GROUP BY 절

  • GROUP BY와 HAVING의 위치는 서로 바뀔수 있다.
  • GROUP BY절에 기재한 칼럼은 반드시 SELECT절에 기재하지 않아도 된다.
  • GROUP BY절 이용 시 ORDER BY절에는 반드시 GROUP BY절에서 기재한 칼럼 혹은 표현식이 와야한다.
  • GROUP BY절에 기재한 칼럼에 NULL 값이 존재할 경우 NULL 값이 결과집합에 포함된다.
  • GROUP BY의 결과가 공집합인 경우 MAX 함수를 써도 공집합이 출력된다.

 

집합연산자

  • UNION ALL 이용 시 ORDER BY절은 전체 결과집합을 정렬한다.
  • 집합연산자 이용 시 헤더명은 맨 위의 SELECT문을 따르고 ORDER BY절은 맨 아래의 SELECT문을 따른다.
  • MINUS 연산 시 집합의 결과는 중복이 제거된 행으로 출력된다.

 

계층형 SQL문

  • 계층형 SQL문에서 WHERE절은 FROM절 바로 아래에 위치해야 한다.
  • CONNECT_BY_PATH 함수 이용 시 구분자로 사용되는 문자가 출력되는 칼럼값 안에 존재하면 SQL 문법 에러가 발생한다.

 

JOIN

  • NATURAL JOIN 시 조인 칼럼에는 테이블 앨리어스를 쓸 수 없다.
  • INNER JOIN 시에는 동일한 칼럼이 있을 경우 테이블 앨리어스를 반드시 붙어야 한다.
  • 조인 칼럼이 SELECT절에 존재한다면 ORDER BY절에는 테이블 앨리어스를 붙일 필요가 없다.
  • USING절 조인 시 조인 칼럼에는 테이블 앨리어스를 쓸 수 없다.
  • ON절을 이용한 조인 시 조인 칼럼이 조인 대상 테이블에 존재하는 칼럼일 경우 반드시 테이블 앨리어스를 써야한다.
  • LEFT OUTER JOIN 기준으로 1:M 관계인 경우 LEFT OUTER JOIN의 결과집합의 내용은 LEFT 기준이지만 결과집합의 건수는 RIGHT 기준이다.

 

 

'SQL' 카테고리의 다른 글

[SQL] 2. 데이터 모델과 SQL  (0) 2021.08.13
[SQL] 1. 데이터 모델링의 이해  (0) 2021.07.26

댓글