책 이미지
책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 개발/방법론 > 데이터베이스 프로그래밍 > SQL
· ISBN : 9791196395711
· 쪽수 : 1072쪽
책 소개
목차
1부 기본 개념 _ 1
1. 데이터 _ 3
1.1 데이터 _ 3
1.2 데이터베이스 _ 5
1.3 데이터베이스 관리 시스템 _ 6
1.4 IT 시스템 _ 7
1.5 직종과 직무 _ 8
2. 데이터 모델링 _ 11
2.1 데이터 모델 _ 11
2.2 E-R 모델 _ 12
2.2.1 엔터티 _ 13
2.2.2 속성 _ 14
2.2.3 관계 _ 15
2.2.4 예시 데이터 모델 _ 20
2.3 정규형 _ 22
2.3.1 정규화 _ 22
2.3.2 비정규화 _ 25
2.4 물리 데이터 모델 _ 25
3. 오라클 데이터베이스 _ 27
3.1 개념 _ 27
3.1.1 사용자 _ 28
3.1.2 오브젝트 _ 28
3.1.3 테이블 _ 29
3.1.4 데이터 타입 _ 30
3.1.5 데이터 무결성 _ 30
3.1.6 트랜잭션 _ 31
3.1.7 정적 데이터 딕셔너리 뷰 _ 31
3.1.8 동적 성능 뷰 _ 31
3.2 구조 _ 32
3.2.1 데이터베이스와 인스턴스 _ 33
3.2.2 프로세스 구조 _ 35
3.2.3 메모리 구조 _ 35
3.2.4 저장 구조 _ 37
3.2.5 네트워크 구조 _ 38
3.2.6 애플리케이션 구조 _ 39
4. SQL _ 43
4.1 역사 _ 43
4.2 특징 _ 44
4.3 종류 _ 45
4.4 처리 과정 _ 45
4.5 수행 과정 _ 46
2부 기초 쿼리 _ 49
5. SELECT 문 _ 51
5.1 SELECT 절 _ 52
5.1.1 애스터리스크 _ 52
5.1.2 열 _ 53
5.1.3 열 별칭 _ 55
5.1.4 DISTINCT 키워드 _ 55
5.2 FROM 절 _ 56
5.2.1 스키마 _ 56
5.2.2 테이블 별칭 _ 57
5.2.3 SAMPLE 절 _ 58
5.3 기본 요소 _ 58
5.3.1 리터럴 _ 58
5.3.2 널 _ 65
5.3.3 연산자 _ 65
5.3.4 표현식 _ 69
5.3.5 슈도 칼럼 _ 72
5.3.6 주석 _ 73
5.4 바인드 변수 _ 75
6. 단일 행 함수 _ 77
6.1 문자 함수 _ 78
6.2 숫자 함수 _ 89
6.3 날짜 함수 _ 96
6.4 변환 함수 _ 107
6.5 널 관련 함수 _ 123
6.6 비교 함수 _ 126
6.7 엔코딩 디코딩 함수 _ 127
6.8 환경 식별자 함수 _ 132
7. WHERE 절 _ 141
7.1 비교 조건 _ 141
7.2 논리 조건 _ 144
7.3 BETWEEN 조건 _ 146
7.4 IN 조건 _ 148
7.5 LIKE 조건 _ 151
7.6 널 조건 _ 154
7.7 조건 우선순위 _ 156
7.8 활용 예제 _ 159
8. ORDER BY 절 _ 169
8.1 기본 문법 _ 169
8.2 활용 예제 _ 175
9. 집계 함수 _ 179
9.1 기본 함수 _ 179
9.2 통계 함수 _ 185
9.3 순위 함수 _ 187
9.4 분포 함수 _ 191
9.5 기타 함수 _ 193
9.6 KEEP 키워드 _ 194
10. GROUP BY 절과 HAVING 절 _ 197
10.1 GROUP BY 절 _ 197
10.2 GROUP BY 절의 확장 기능 _ 204
10.2.1 ROLLUP _ 204
10.2.2 CUBE _ 205
10.2.3 GROUPING SETS _ 207
10.2.4 조합 열 _ 208
10.2.5 연결 그룹 _ 209
10.2.6 관련 함수 _ 210
10.3 HAVING 절 _ 213
3부 중급 쿼리 _ 217
11. 조인 _ 219
11.1 기본 원리 _ 219
11.1.1 조인 조건 _ 220
11.1.2 조인 범위 _ 227
11.1.3 조인 차수 _ 240
11.2 기술 순서 _ 245
11.3 ANSI 조인 문법 _ 250
11.3.1 NATURAL JOIN 절 _ 250
11.3.2 USING 절 _ 250
11.3.3 CROSS JOIN 절 _ 250
11.3.4 INNER JOIN 절 _ 251
11.3.5 OUTER JOIN 절 _ 252
11.4 파티션 아우터 조인 _ 257
11.5 활용 예제 _ 257
12. 서브 쿼리 _ 283
12.1 중첩 서브 쿼리 _ 285
12.1.1 비상관 서브 쿼리 _ 286
12.1.2 상관 서브 쿼리 _ 291
12.1.3 사용 기준 _ 295
12.2 스칼라 서브 쿼리 _ 300
12.3 인라인 뷰 _ 302
12.4 사용 기준 _ 304
12.5 WITH 절 _ 309
12.5.1 SUBQUERY FACTORING 절 _ 310
12.5.2 PL/SQL 선언 _ 311
12.6 신규 기능 _ 312
12.6.1 LATERAL 인라인 뷰 _ 312
12.6.2 CROSS APPLY 절 _ 314
12.6.3 OUTER APPLY 절 _ 314
12.6.4 기존 동작 변화 _ 315
13. 집합 연산자 _ 317
13.1 기본 문법 _ 319
13.1.1 UNION ALL 연산자 _ 319
13.1.2 UNION 연산자 _ 320
13.1.3 INTERSECT 연산자 _ 322
13.1.4 MINUS 연산자 _ 323
13.2 제약 사항 _ 323
13.3 활용 예제 _ 326
14. 분석 함수 _ 337
14.1 기본 문법 _ 338
14.1.1 QUERY PARTITION 절 _ 338
14.1.2 ORDER BY 절 _ 339
14.1.3 WINDOWDING 절 _ 340
14.1.4 KEEP 키워드 _ 350
14.1.5 제약 사항 _ 351
14.2 분석 함수 _ 354
14.2.1 기본 함수 _ 355
14.2.2 통계 함수 _ 361
14.2.3 순위 함수 _ 363
14.2.4 분포 함수 _ 372
14.2.5 순차 함수 _ 374
14.2.6 기타 함수 _ 379
14.3 활용 예제 _ 386
15. Top-N 쿼리 _ 395
15.1 기본 문법 _ 395
15.1.1 ROWNUM 방식 _ 395
15.1.2 분석 함수 방식 _ 400
15.1.3 ROW LIMITING 절 _ 403
15.2 고급 주제 _ 405
15.2.1 Top-N 쿼리와 조인 _ 405
15.2.2 Top-N 쿼리와 UNION ALL 연산자 _ 407
16. 계층 쿼리 _ 409
16.1 계층 쿼리 절 _ 413
16.1.1 기본 문법 _ 413
16.1.2 동작 원리 _ 415
16.1.3 전개 방향 _ 419
16.1.4 계층 정렬 _ 420
16.1.5 루프 처리 _ 421
16.2 재귀 서브 쿼리 팩토링 _ 423
16.2.1 기본 문법 _ 423
16.2.2 계층 정렬 _ 425
16.2.3 루프 처리 _ 427
16.3 고급 주제 _ 429
16.3.1 노드 제거 _ 429
16.3.2 다중 루트 노드 _ 430
16.3.3 다중 속성 순환 관계 _ 431
16.3.4 계층 쿼리와 조인 _ 435
16.4 활용 예제 _ 436
17. PIVOT 절과 UNPIVOT 절 _ 443
17.1 PIVOT 절 _ 443
17.1.1 기본 문법 _ 444
17.1.2 기존 방식 _ 448
17.2 UNPIVOT 절 _ 449
17.2.1 기본 문법 _ 449
17.2.2 기존 방식 _ 454
17.3 활용 예제 _ 455
4부 관리 구문 _ 459
18. DML 문 _ 461
18.1 INSERT 문 _ 461
18.1.1 단일 테이블 INSERT 문 _ 461
18.1.2 다중 테이블 INSERT 문 _ 465
18.2 UPDATE 문 _ 469
18.3 DELETE 문 _ 474
18.4 MERGE 문 _ 476
18.4.1 기본 문법 _ 476
18.4.2 고급 주제 _ 486
18.5 DML 에러 로깅 _ 491
19. TCS 문 _ 497
19.1 트랜잭션 _ 498
19.1.1 구조 _ 498
19.1.2 SCN _ 499
19.2 기본 문법 _ 500
19.2.1 COMMIT 문 _ 501
19.2.2 ROLLBACK 문 _ 502
19.2.3 SAVEPOINT 문 _ 504
19.3 데이터 동시성 _ 508
19.3.1 락킹 메커니즘 _ 508
19.3.2 동시성 제어 _ 512
19.4 데이터 일관성 _ 520
19.4.1 문장 수준 읽기 일관성 _ 521
19.4.2 트랜잭션 수준 읽기 일관성 _ 522
20. DDL 문 _ 527
20.1 테이블 _ 527
20.1.1 기본 문법 _ 527
20.1.2 테이블 유형 _ 539
20.2 열 _ 555
20.2.1 기본 문법 _ 555
20.2.2 데이터 타입 _ 561
20.2.3 기본값 _ 574
20.2.4 열 유형 _ 575
20.3 제약 조건 _ 581
20.3.1 기본 문법 _ 581
20.3.2 제약 조건 유형 _ 583
20.3.3 제약 조건 상태 _ 599
20.4 인덱스 _ 605
20.4.1 기본 문법 _ 606
20.4.2 인덱스 유형 _ 611
20.4.3 인덱스와 제약 조건 _ 616
20.5 파티션 _ 622
20.5.1 파티션 테이블 _ 622
20.5.2 파티션 인덱스 _ 640
20.5.3 관리 구문 _ 643
20.5.4 관리 구문과 인덱스 _ 652
20.5.5 신규 기능 _ 653
20.6 뷰 _ 658
20.6.1 기본 문법 _ 658
20.6.2 활용 예제 _ 666
20.7 시퀀스 _ 669
20.7.1 기본 문법 _ 669
20.7.2 시퀀스 유형 _ 673
20.7.3 신규 기능 _ 675
20.7.4 활용 예제 _ 680
20.8 시너님 _ 682
20.8.1 기본 문법 _ 682
20.8.2 시너님 유형 _ 685
20.9 데이터베이스 링크 _ 687
20.9.1 기본 문법 _ 687
20.9.2 고급 주제 _ 690
20.10 COMMENT 문 _ 693
21. DCL 문 _ 695
21.1 사용자 _ 695
21.1.1 기본 문법 _ 695
21.2 권한 _ 698
21.2.1 기본 문법 _ 698
21.3 롤 _ 709
21.3.1 기본 문법 _ 709
21.3.2 SET ROLE 문 _ 714
22. SCS 문 _ 719
22.1 기본 문법 _ 719
22.1.1 ALTER SESSION SET 절 _ 720
5부 고급 쿼리 _ 729
23. 세계화 지원 _ 731
23.1 시간대 지원 _ 731
23.1.1 데이터 타입 _ 731
23.1.2 날짜 함수 _ 733
23.1.3 날짜 표현식 _ 739
23.2 다국어 지원 _ 740
23.2.1 캐릭터 셋 _ 740
23.2.2 데이터 타입 _ 741
23.2.3 관련 함수 _ 742
24. 정규 표현식 _ 743
24.1 기본 문법 _ 743
24.1.1 POSIX 연산자 _ 743
24.1.2 PERL 정규 표현식 연산자 _ 752
24.2 정규 표현식 조건과 함수 _ 756
24.3 활용 예제 _ 764
25. 근사 쿼리 _ 767
25.1 근사 함수 _ 767
25.2 초기화 파라미터 _ 773
26. MODEL 절 _ 777
26.1 기본 문법 _ 777
26.1.1 RULES 절 _ 781
26.1.2 규칙 옵션 _ 785
26.1.3 셀 참조 옵션 _ 789
26.1.4 행 반환 옵션 _ 792
26.1.5 참조 모델 _ 793
26.2 고급 주제 _ 796
26.2.1 널과 누락된 셀 처리 _ 796
26.2.2 FOR 루프 _ 798
26.2.3 MODEL ITERATE 절 _ 804
26.2.4 규칙 종속 _ 806
26.2.5 정렬 규칙 _ 807
26.2.6 분석 함수 _ 810
26.3 활용 예제 _ 812
27. MATCH_RECOGNIZE 절 _ 817
27.1 기본 문법 _ 817
27.1.1 PARTITION BY 절 _ 820
27.1.2 ORDER BY 절 _ 820
27.1.3 ROW PER MATCH 절 _ 821
27.1.4 MEASURE 절 _ 821
27.1.5 PATTERN 절 _ 821
27.1.6 SUBSET 절 _ 824
27.1.7 DEFINE 절 _ 825
27.1.8 SKIP TO 절 _ 825
27.1.9 MEASURE 절과 DEFINE 절의 표현식 _ 826
27.2 고급 주제 _ 833
27.2.1 중첩 탐색 함수 _ 833
27.2.2 빈 일치와 불일치 행 _ 834
27.2.3 제외 _ 834
27.2.4 순열 _ 835
27.3 활용 예제 _ 836
28. 사용자 정의 타입 _ 857
28.1 기본 문법 _ 857
28.1.1 오브젝트 타입 _ 858
28.1.2 중첩 테이블 _ 858
28.2 MULTISET 조건 _ 864
28.3 컬렉션 함수 _ 866
28.4 TABLE 컬렉션 표현식 _ 871
28.5 활용 예제 _ 873
29. XML 개발 _ 875
29.1 기본 문법 _ 875
29.1.1 XMLType _ 875
29.1.2 XMLType 멤버 함수 _ 877
29.1.3 XPath 표현식 _ 877
29.1.4 XML 함수 _ 883
29.1.5 XQuery 표현식 _ 893
29.1.6 DBMS_XMLGEN 패키지 _ 903
29.2 활용 예제 _ 904
30. JSON 개발 _ 907
30.1 기본 문법 _ 907
30.1.1 JSON 열 _ 907
30.1.2 점 표기법 _ 909
30.1.3 SQL/JSON Path 표현식 _ 910
30.1.4 SQL/JSON 조건 _ 910
30.1.5 JSON 함수 _ 913
30.2 활용 예제 _ 920
31. Flashback 기술 _ 921
31.1 Flashback 기능 _ 921
31.1.1 Flashback Query _ 921
31.1.2 Flashback Version Query _ 924
31.1.3 Flashback Transaction Query _ 925
31.1.4 Flashback Table _ 926
31.1.5 Flashback Drop _ 927
31.1.6 Flashback Database _ 928
31.2 Temporal Validity _ 929
31.2.1 관리 구문 _ 929
31.2.2 조회 구문 _ 931
31.2.3 DBMS_FLASHBACK_ARCHIVE 패키지 _ 933
32. 제공 패키지 _ 935
32.1 DBMS_CRYPTO 패키지 _ 935
32.1.1 패키지 함수 _ 936
32.1.2 활용 예제 _ 941
32.2 DBMS_RANDOM 패키지 _ 944
32.3 DBMS_LOB 패키지 _ 945
32.4 DBMS_METADATA 패키지 _ 948
32.5 DBMS_APPLICATION_INFO 패키지 _ 951
32.6 DBMS_SESSION 패키지 _ 952
32.7 UTL_RAW 패키지 _ 954
32.7.1 패키지 함수 _ 954
32.7.2 활용 예제 _ 954
32.8 UTL_MATCH 패키지 _ 956
32.9 UTL_RECOMP 패키지 _ 958
부록 _ 961
A. SCOTT 스키마 _ 963
B. ERD 표기법 _ 965
C. 예시 데이터 모델 _ 969
D. oerr 명령어 _ 973
E. 문자열 결합 _ 979
F. 시간 차원 테이블 _ 989
G. 블로킹 처리 _ 997
H. 복합 FK 제약 조건 _ 1001
I. 도메인 인덱스 _ 1007
J. 시퀀스 값 변경 _ 1013
K. SCALABLE 시퀀스 _ 1017
L. 문자열 분리 _ 1021
M. CUROSR 표현식 _ 1025