다음 중 SQL과 옵티마이저에 대한 설명으로 가장 부적절한 것을 2개 고르시오. ① 두 SQL 결과가 같다면, 수행속도도 별 차이가 없다. ② 옵티마이저에 의해 내부적인 쿼리 변환이 이루어지더라도 결과집합에는 영향을 주지 않는다. ③ 사용자가 제시하는 SQL은 결과에 대한 요구사항일 뿐이며 처리절차는 옵티마이저가 결정한다. ④ 사용자가 부여한 조건은 실행계획에 영향을 주지 않는다. [출처] http://www.dbguide.net/da.db?cmd=snb9_4_view&boardUid=166991&boardConfigUid=81 * 정답 및 해설 * 정답 : ①, ④ 두 SQL의 결과가 같더라도 SQL 형태에 따라 수행속도가 크게 다를 수 있다. 실행계획에 가장 큰 영향을 미치는 것은 조건절이다.
다음 중 SELECT절에 사용하는 서브쿼리인 스칼라 서브쿼리(Scalar Subquery)에 대한 설명으로 가장 적절한 것을 2개 고르시오. ① 내부적으로 Unique 작업을 실행한다. ② 하나의 로우에 해당하는 결과 건수는 1건 이하여야 한다. ③ Min 또는 Max 함수를 사용해야 한다. ④ 결과 칼럼의 개수는 1개여야 한다. [출처] http://www.dbguide.net/da.db?cmd=snb9_4_view&boardUid=166434&boardConfigUid=81 * 정답 및 해설 * 정답 : ②, ④ 스칼라 서브쿼리의 결과는 1칼럼의 1건이다. 한 행, 한 칼럼(1 Row 1 Column)만을 반환하는 서브쿼리 단일 행 서브쿼리이기 때문에 결과가 2건 이상 반환되면 SQL문은 오류를 반환
다음 중 논리 데이터 모델을 물리 데이터 모델로 변환할 때 슈퍼타입/서브타입 데이터 모델에 대한 변환방법으로 가장 부적절한 것은? ① 공통화된 슈퍼타입에 대해 데이터가 너무 많거나 칼럼이 너무 많은 경우 수직분할과 수평분할을 적용하여 성능을 향상 시키도록 한다. ② 슈퍼타입, 서브타입 각각에 대해 테이블이 독립적으로 구분되어 1:1관계의 테이블이 유지될 수 있도록 한다. ③ 슈퍼타입과 서브타입을 결합하여 한 개의 테이블로 생성하여 서브타입의 개수만큼 테이블을 생성한다. ④ 전체 테이블을 하나의 테이블에 속성을 모두 포함하도록 한다. 다만 서브타입일 경우 속성마다 Not Null을 지정할 수 있지만 통합되면 개별적인 특징을 반영하지 못할 수 있다. [출처] http://www.dbguide.net/da.d..
다음 중 서브쿼리에 대한 설명으로 가장 부적절한 것은? ① 메인 쿼리는 조직 테이블(1)이고, 서브쿼리는 사원 테이블(M)을 사용할 경우, 질의 결과는 M레벨인 사원 레벨로 나온다. ② 메인쿼리에서 서브쿼리 칼럼을 사용할 수 없다. ③ 서브쿼리에서 메인쿼리 칼럼은 사용할 수 있다. ④ 서브쿼리의 연결 연산자로서 ‘=’을 사용할 경우, 서브쿼리 파트의 결과는 1건 이하여야 한다. [출처] http://www.dbguide.net/da.db?cmd=snb9_4_view&boardUid=166044&boardConfigUid=81 * 정답 및 해설 * 정답 : ① 서브쿼리를 사용한 경우, 질의 결과는 항상 메인쿼리 레벨과 동일하다.
다음 중 Oracle 계층형 질의에 대한 설명으로 가장 부적절한 것은? ① START WITH절은 계층 구조의 시작점을 지정하는 구문이다. ② 루트 노드의 LEVEL 값은 0이다. ③ 순방향전개란 부모 노드로부터 자식 노드 방향으로 전개하는 것을 말한다. ④ ORDER SIBLINGS BY절은 형제 노드 사이에서 정렬을 지정하는 구문이다. * 정답 및 해설 * 정답 : ② Oracle 계층형 질의에서 루트 노드의 LEVEL 값은 1이다. [출처] http://www.dbguide.net/da.db?cmd=snb9_4_view&boardUid=165850&boardConfigUid=81
다음 중 절차형 SQL 모듈에 대한 설명으로 가장 부적절한 것은? ① 데이터의 무결성과 일관성을 위해서 사용자 정의 함수를 사용한다. ② 사용자 정의 함수는 절차형 SQL을 로직과 함께 데이터베이스 내에 저장해 놓은 명령문의 집합을 의미하며 다른 SQL문장에 포함되어 실행될 수 있다. 단독적으로 실행되기 보다는 다른 SQL문을 통하여 호출되고 그 결과를 리턴하는 SQL의 보조적인 역할을 한다. ③ 트리거는 특정한 테이블에 INSERT, UPDATE, DELETE와 같은 DML문이 수행되었을 때 데이터베이스에서 자동으로 동작하도록 작성된 프로그램이다. ④ 스토어드 프로시져는 절차형 SQL을 로직과 함께 데이터베이스 내에 저장해 놓은 명령문의 집합을 의미한다. * 정답 및 해설 * 정답 : ① Stored ..
다음 중 아래 두 SQL문에 대한 설명으로 가장 적절한 것은? (단, DEPT : EMP = 1 : M) ------------------------------------- 아 래 --------------------------------------- SELECT A.ENAME, A.SAL, B.DNAME FROM EMP A, DEPT B WHERE A.DEPTNO = B.DEPTNO AND B.DEPTNO = 20; SELECT A.ENAME, A.SAL, B.DNAME FROM EMP A, DEPT B WHERE A.DEPTNO = 20 AND B.DEPTNO = 20; -------------------------------------------------------------------------..
다음 중 아래와 같은 테이블에서 SQL의 실행 결과로 가장 적절한 것은? ------------------------------------- 아 래 --------------------------------------- [계약] 주문번호 주문일자 주문금액 부가세 주문월 101 2010/01/01 500 50 201001 SELECT COUNT(*) CNT, SUM(주문금액) 주문금액 FROM 계약 WHERE 주문월 = ‘201010’ GROUP BY 주문월 ------------------------------------------------------------------------------------------ ① CNT 주문금액 0 0 ② CNT 주문금액 0 ③ CNT 주문금액 0 ④ CNT 주문..
다음 중 아래 SQL과 인덱스 구성에 대한 설명으로 가장 부적절한 것을 2개 고르시오. ------------------------------------- 아 래 --------------------------------------- SELECT ……………… FROM TAB1 WHERE COL1 = :VAL1 AND COL2 LIKE :VAL2 || '%' AND COL3 IN ('1','5') AND COL4 BETWEEN :DATE1 AND :DATE2 ■ 인덱스구성 : COL1 + COL2 + COL3 ------------------------------------------------------------------------------------------ ① COL1 조건이 없었다면 정상적으..
다음 중 아래 SQL문과 실행계획을 보고, 두 테이블의 조인 순서와 inner 테이블에 대한 조인 회수로 가장 적절한 것은? ------------------------------------ 아 래 -------------------------------------- select * from t_small a, t_big b where a.id = b.id and a.colid = b.colid and a.number = b.number and b.name = 'password' and a.length