SQLd: 기출 예상 복원

m_ngyeong·2025년 3월 7일
0

SQLd

목록 보기
9/9
post-thumbnail

SQL Compiler:

기출 복원 사이트:


SQLd 기출 예상 복원

Q. 자신과 성별이 같은 부양가족을 가진 직원의 이름을 검색하는 질의를 SQL?

SELECT E.이름
FROM 직원 AS E
WHERE EXISTS (SELECT * FROM 부양가족 WHERE E.직원번호 = 직원번호 AND E.성별 = 성별);

Q. 부양가족을 2명 이상 가진 사원의 사번(eno), 성명(ename), 부양가족 수를 검색’하는 질의를 SQL?

[Table]
employee(eno, ename, adddress, score, dno)
dependent(eno, ename, birthday, relation)

SELECT e.eno, e.ename, t.cnt
FROM employee e, (SELECT eno, count(*) as cnt
				  FROM dependent 
                  GROUP BY eno HAVING count (*) >= 2) cnt t
WHERE e.eno = t.eno;

Q. 현재 행을 기준으로 파티션 내에서 앞의 한 건, 현재행, 뒤의 한 건을 범위를 지정하는 Over의 옵션?

ROWS BETWEEN 1 PRECEDING AND 1 FOLLOWING

Q. 인덱스 특징:

  • 인덱스는 내림차순으로 생성 및 정렬된다.
  • 비용적인 측면에서는 전체 테이블 스캔이 유리할 수 있다.
  • 규칙 기반 옵티마이저의 규칙에 따라 적절한 인덱스가 존재하면 전체 테이블 스캔보다는 항상 인덱스를 사용하려고 한다.
  • 인덱스 범위 스캔은 결과 건수만큼 반환한다. 결과가 없으면 한 건도 반환하지 않을 수 있다.

Q. 매출 누적을 구하는 SQL문(윈도우 함수 사용)?

SELECT 영업사원, 판매월, sum(매출) 
OVER (PARTITION BY 영업사원 ORDER BY 판매월 
RAGNE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) 누적매출 
FROM 매출;

참고, https://cbt.youngjin.com/exam/index.php?no=73

profile
ʚȉɞ

0개의 댓글