복습만이 살길이다
오라클 SQL 정리
null값 : 산술식에 null값이 포함된 경우 전체 결과도 null
alias : " " 큰따옴표
리터럴값 : ' ' 작은 따옴표
nvl : MySQL의 ifnull과 같음. null값을 실제 값으로 변환
그룹 함수와 group by절 사용 식 : 그룹함수에 포함되지 않는 컬럼이 같이 출력되려면 그룹함수에 포함되지 않은 컬럼은 반드시 group by절에 포함되어야함
on절 join, left, full outer join, self-join
subquery : subquery를 먼저 실행한 후 메인쿼리 실행
제약조건 : PK, FK, UK, CK, NN
10g버전이후 오라클에서는 휴지통이 있음 => show recyclebin, flashback table
테이블 절단 truncate, delete 비교 => 롤백 유무
시퀀스
index : 테이블의 데이터 검색 속도를 높이기 위해 사용됨. PK, UK 제약조건이 정의된 컬럼에 자동으로 생성됨
data dictionary
알아두어야할 것
- outer join
ex) 부서가 없는 사원을 검색하는데 inner join을 했을 때 검색되지 않음. => 이때 outer join을 사용
- delete truncate drop 비교
- 구문의 처리 순서
- flashback table
- 제약조건
외래키 자식 컬럼에는 부모 컬럼에 있는 값만 삽입/수정할 수 있음
- 인덱스
다 인덱스를 생성해두면 공간적인 제약이 있기 때문에 자주 사용되는 컬럼 위주로 사용하는 것이 좋음
- 시퀀스, 캐쉬
캐쉬 옵션 : 사용 가능한 다음 시퀀스 값을 미리 저장해 놓고 반환하는 옵션
ex) cache 5 => 캐쉬 메모리 5만큼 사용함.
캐쉬의 기본값은 20임. 즉 캐쉬 옵션을 사용하는 것을 권장함
왜 캐쉬를 사용하는 것을 권장하는지? 성능 차이가 있기 때문임
- 서브쿼리 사용 목적
- 조인 사용 목적
- 정규화
설계 => 중복된 데이터가 최소화된 것이 좋음 이러한 과정을 '정규화'
반정규화 : 정규형을 거슬러 오르는 것
- 데이터 모델링(테이블 설계)
'KDT > DB' 카테고리의 다른 글
240412 DB 순위 함수 (0) | 2024.04.12 |
---|---|
240402 DB - Top-N 분석 (0) | 2024.04.02 |
240329 DB - 사용자 관리를 위한 Data Dictionary (0) | 2024.03.29 |
240327 DB - 데이터 제어어(DCL) (0) | 2024.03.27 |
240321 DB - 조건부 표현식 2 (0) | 2024.03.21 |