메뉴 여닫기
개인 메뉴 토글
로그인하지 않음
만약 지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

미디어위키 표 만들기

데브카페

미디어위키 표 만들기

색상추가

{| class="wikitable" style="width: 100%;"
! style="width: 20%;" | 항목
! style="width: 40%;" | WITH 절
! style="width: 40%;" | 서브쿼리
|-
| '''가독성'''
| style="background:#e6f3ff;" | 매우 높음
| 복잡하면 읽기 어려움
|-
| '''재사용'''
| style="background:#e6f3ff;" | 가능 (한 번 정의해서 여러 번 사용)
| 동일 쿼리를 반복 작성해야 함
|-
| '''성능'''
| style="background:#e6f3ff;" | Oracle이 내부적으로 최적화 가능
| 중복 계산 발생 시 성능 저하 가능
|}
항목 WITH 절 서브쿼리
가독성 매우 높음 복잡하면 읽기 어려움
재사용 가능 (한 번 정의해서 여러 번 사용) 동일 쿼리를 반복 작성해야 함
성능 Oracle이 내부적으로 최적화 가능 중복 계산 발생 시 성능 저하 가능

색상추가2

{| class="wikitable" style="border-collapse: collapse; width: 100%; margin: 5px 0;"
|-
! style="border-right: 1px solid #555; padding: 5px; text-align: center; background: #eaeaea;" | 상황
! style="border-right: 1px solid #555; padding: 5px; text-align: center; background: #eaeaea;" | 인덱스 없음
! style="padding: 5px; text-align: center; background: #eaeaea;" | 인덱스 있음
|-
| style="border-right: 1px solid #ddd; padding: 10px; text-align: center; font-weight: bold;" | <source lang=sql>SELECT * FROM employees WHERE name = 'Kim';</source>
| style="border-right: 1px solid #ddd; padding: 10px; background: #fff5f5;" | 전체 테이블을 처음부터 끝까지 검사함<br><span style="color:#d33">▸ Full Table Scan 발생</span>
| style="padding: 10px; background: #f5fff5;" | 인덱스를 따라 바로 'Kim'의 위치로 감<br><span style="color:#2a7">▸ Index Range Scan 동작</span>
|}

상황 인덱스 없음 인덱스 있음
SELECT * FROM employees WHERE name = 'Kim';
전체 테이블을 처음부터 끝까지 검사함
▸ Full Table Scan 발생
인덱스를 따라 바로 'Kim'의 위치로 감
▸ Index Range Scan 동작

정렬되는 표

결과

{| class="wikitable sortable"
|+ 지역별 제품 매출
|-
! 지역
! 제품
! 매출액(USD)
|-
| Seoul || Laptop || 4,200
|-
| Seoul || Phone || 2,300
|-
| Busan || Laptop || 1,500
|-
| Busan || Phone || 1,200
|}
지역별 제품 매출
지역 제품 매출액(USD)
Seoul Laptop 4,200
Seoul Phone 2,300
Busan Laptop 1,500
Busan Phone 1,200

Comments