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

미디어위키 표 만들기: 두 판 사이의 차이

데브카페
편집 요약 없음
편집 요약 없음
 
(같은 사용자의 중간 판 2개는 보이지 않습니다)
38번째 줄: 38번째 줄:
| 중복 계산 발생 시 성능 저하 가능
| 중복 계산 발생 시 성능 저하 가능
|}
|}
<source lang=js>
 
=== 왜 인덱스가 필요할까?===
=== 색상추가2 ===
<pre>
{| class="wikitable" style="border-collapse: collapse; width: 100%; margin: 5px 0;"
{| class="wikitable" style="border-collapse: collapse; width: 100%; margin: 5px 0;"
|-
|-
51번째 줄: 52번째 줄:
|}
|}


</source>
</pre>


=== 왜 인덱스가 필요할까?===
{| class="wikitable" style="border-collapse: collapse; width: 100%; margin: 5px 0;"
{| class="wikitable" style="border-collapse: collapse; width: 100%; margin: 5px 0;"
|-
|-
65번째 줄: 65번째 줄:
|}
|}
----
----
=== 정렬되는 표 ===
=== 정렬되는 표 ===
<source lang=js>
<source lang=js>
101번째 줄: 102번째 줄:
| Busan || Phone || 1,200
| Busan || Phone || 1,200
|}
|}
[[category:미디어위키]]

2025년 6월 24일 (화) 18:33 기준 최신판

미디어위키 표 만들기

색상추가

{| 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