본문 바로가기

SQLD7

3-2. 노랭이 SQL 풀이(65번~127번) 위 문제는 한국데이터산업진흥원의 [SQL 자격검정 실전문제]를 참조하였습니다. 해설은 https://cafe.naver.com/sqlpd 의 글과 참조하여 개인적인 생각을 적은 글입니다. (1) p.66 69번 아래는 어느 회사의 정산 데이터 모델의 일부이며 고객이 서비스를 사용한 시간 대에 따라 차등 단가를 적용하려고 한다. 다음 중 시간대별사용량 테이블을 기반으로 고객별 사용금액을 추출하는 SQL으로 가장 적절한 것은? 1 2 3 4 5 6 SELECT A.고객ID, A.고객명, SUM(B.사용량 * C.단가) AS 사용금액 FROM 고객 A.INNER JOIN 시간대별사용량 B ON (A.고객ID = B.고객ID) INNER JOIN 시간대구간 C ON B.사용시간대 BETWEEN C.시작시간대 A.. 2021. 9. 1.
3-1. 노랭이 SQL 풀이(1번~64번) 위 문제는 한국데이터산업진흥원의 [SQL 자격검정 실전문제]를 참조하였습니다. 해설은 https://cafe.naver.com/sqlpd 의 글과 참조하여 개인적인 생각을 적은 글입니다. p.42 6번 다음 중 아래의 데이터 모델과 같은 테이블 및 PK 제약조건을 생성하는 DDL 문장으로 올바른 것은? (단, DBMS는 Oracle을 기준으로 한다.) 1 2 3 4 5 6 CREATE TABLE PRODUCT ( PROD_ID VARCHAR2(10) NOT NULL ,PROD_NM VARCHAR2(100) NOT NULL ,REG_DT DATE NOT NULL ,REGR_NO NUMBER(10) ,CONSTRAINT PRODUCT_PK PRIMARY KEY (PROD_ID) ); cs 오라클에서는 마지막.. 2021. 8. 29.
2-3. SQL 최적화 기본원리 SQL 최적화 기본원리 (1) 옵티마이저와 실행계획 옵티마이저 다양한 실행 방법들 중에서 최적의 실행방법을 결정하는 것이 옵티마이저의 역할 규칙기반 옵티마이저 규칙(우선순위)을 가지고 실행계획을 생성한다. 비용기반 옵티마이저 SQL문을 처리하는데 필요한 비용이 가장 적은 실행 계획을 선택하는 방식 비용기반 옵티마이저는 통계정보, DBMS 버전, DBMS 설정 정보 등의 차이로 인해 동일 SQL문도 서로 다른 실행계획이 생성될 수 있다. 또한 비용기반 옵티마이저의 다양한 한계들로 인해 실행계획의 예측 및 제어가 어렵다는 단점이 있다. 옵티마이저 실행계획 “SQL에서 요구한 사항을 처리하기위한 절차와 방법” 실행계획을 구성하는 요소에는 조인순서, 조인기법, 액세스기법, 최적화정보, 연산 등 동일한 SQL에 .. 2021. 8. 25.
2-2. SQL 활용 SQL 활용 (1) 표준 조인 STANDAR SQL 일반 집합 연산자를 현재의 SQL과 비교하면, UNION 연산은 UNION 기능으로, INTERSECTION 연산은 INTERSECT 기능으로, DIFFERENCE 연산은 EXCEPT(Oracle은 MINUS) 기능으로, PRODUCT 연산은 CROSS JOIN 기능으로 구현되었다. 순수 관계 연산자를 현재의 SQL과 비교하면, SELECT 연산은 WHERE 절로 구현되었다. PROJECT 연산은 SELECT 절로 구현되었다. (NATURAL) JOIN 연산은 다양한 JOIN 기능으로 구현되었다. DIVIDE 연산은 현재 사용되지 않는다. FROM절의 JOIN 형태 ANSI/ISO SQL에서 표시하는 FROM 절의 JOIN 형태는 다음과 같다. INNE.. 2021. 8. 25.