자격증/SQLD

SQLD 노랭이 2과목 개념 정리 (SQL 활용)

ByeongJun 2023. 6. 9. 15:01
반응형
 

SQLD 노랭이 2과목 개념 정리 (SQL 기본)

SQL 명령어 절차적 데이터 조작어(procedural DML) 사용자가 어떤 데이터를 원하고 해당 데이터를 얻으러면 어떻게 처리해야 하는지를 설명 > 어떻게 (HOW) 데이터를 접근해야 하는지 명세 ex) PL/SQL(오

3mmmeee.tistory.com

노랭이 P.75~ (표준 조인 / 집합 연산자 / 계층형 질의·셀프조인 / 서브쿼리 / 그룹 함수 / 윈도우 함수 / DCL / 절차형 SQL)

 

66번

출처 : 어쩌다DBA

조건 1 : 추천컨텐츠 테이블의 추천대상일자에 해당하는 날에만 추천

조건 2 : 비선호컨텐츠 테이블에 고객별로 등록된 컨텐츠는 추천하지 않음

--3번--
 FROM ...
   ON (A.고객ID = B.고객ID) INNER JOIN 컨텐츠 C
   ON (B.컨텐츠ID = C.컨텐츠ID) LEFT OUTER JOIN 비선호컨텐츠 D
  
--4번--
 FROM ...
   ON (A.고객ID = #custId# AND A.고객ID = B.고객ID) INNER JOIN 컨텐츠 C
   ON (B.컨텐츠ID = C.컨텐츠)
WHERE B.추천대상일자 = TO_CHAR(SYSDATE, 'YYYY.MM.DD')
  AND NOT EXISTS (SELECT X.컨텐츠ID
                    FROM 비선호컨텐츠 X
                               WHERE X.고객ID = B.고객ID
                                 AND X.컨텐츠ID = B.컨텐츠ID);

 

 

86번

회원상세정보가 회원기본정보를 참조하는 형태

  1. 회원상세정보도 무조건 등록되어야 하는 관계 (아무것도 출력되지 않는다)
  2. 회원 전체 건수의 2배가 추출
  3. 같은 값끼리 JOIN 되니 같을 수 밖에 없음
  4. 결과는 같음

 

 

 

 

계층형 질의문

  • SQL Server에서의 계층형 질의문은 CTE(Common Table Expression)를 재귀 호출함으로써 계층 구조를 전개
  • SQL Server에서의 계층형 질의문은 앵커 멤버를 실행하여 기본 결과 집합을 만들고 이후 재귀 멤버를 지속적으로
    실행한다.
  • 오라클의 계층형 질의문에서 WHERE절은 모든 전개를 진행한 이후 필터 조건으로서 조건을 만족하는 데이터만
    추출하는데 활용된다.
  • 오라클의 계층형 질의문에서 PRIOR 키워드는 CONNECT BY절 뿐만 아니라 SELECT,WHERE절에서도 사용 가능
  • 'PRIOR 자식 = 부모' 형태로 사용하면 순방향 전개로 수행

 

 

절차형 SQL 모듈

  • 저장형 프로시져는 SQL을 로직과 함께 데이터베이스 내에 저장해놓은 명령문의 집합을 의미
  • 저장형 함수(사용자 정의 함수)는 단독적으로 실행되기 보다는 다른 SQL문을 통해 호출되고 결과를 리턴
    ( = SQL 보조적인 역할 )
  • 트리거는 특정한 테이블에 INSERT, UPDATE, DELETE와 같은 DML문이 수행되었을 때 데이터베이스에서 자동으로 동작하도록 작성된 프로그램
  • 데이터 무결성과 일관성을 위해 사용자 정의함수를 사용한다(X)   => Trigger
반응형