일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 소수
- JSX
- stl
- 알고리즘
- box-sizing
- 강화학습
- 포토샵
- 미디어 쿼리
- skt membership
- Codility
- Javascript
- SK바이오사이언스
- float
- CSS
- REM
- 반응형 웹
- Photoshop
- grid
- react
- c++
- transform
- 수학
- 상태
- pandas
- spring
- 확률
- Gap
- 백준
- c
- 통신사할인
- Today
- Total
목록CS/postgresql (25)
sliver__

EXPLAIN? 쿼리문이 어떻게 실행될지 Query plan을 알려준다. 쿼리 계획에서 등장하는 실행 계획이다.

인덱싱? 데이터베이스 속에 중요한 부분을 따로 정리하여 쿼리 속도를 향상시킨다. 인덱스 특징 인덱스는 쿼리 작업을 향상시킨다. 새로운 로우 또는 로우를 제거할 때 인덱스 업데이트가 일어난다. 단순 인덱스(하나의 컬럼 기준), 복합 인덱스(여러 컬럼 기준) 복합 인덱스는 인덱스의 순서가 중요하다. 다양한 인덱스 종류 B-Tree, HASH, GIN B-Tree Postgresql의 기본 인덱스 방식 하나의 노드에 2개 이상의 자식노드를 가진다. 각 노드의 키 값은 정렬되어 있다. 부모, 자식 노드들은 연결되어있고 데이터들의 순서가 보장된다. 왼쪽 자식 노드는 9보다 작다 가운데 자식 노드는 9보다 크고 15보다 작다. 오른쪽 자식 노드는 15보다 크다. HASH 원래의 값을 hash함수를 통해 저장 인덱스..

정규화? 데이터의 중복성을 제거하기 위해 데이터를 구성하는 과성 데이터를 표현을 간결하고 명확하게 할 수 있다. 비정규화 모든 테이블을 정규화하였다면, 데이터 조회시 JOIN이 자주 발생해 비효율적일 수 있다. 비정규화의 유형 자주 함께 조회되는 테이블 데이터를 얻기 위해 자주 JOIN을 하는것 보다, 중복된 데이터로 관리한다. 하지만 무결성이 깨질 위험이 있다. 집계연산이 빈번하게 일어나는 상황 해당 테이블에서 자주 조회되지 않는 컬럼을 의도적으로 테이블로 분리

데이터 모델링? 저장할 데이터의 구조를 정하는 작업 조회되는 자료의 빈도 수에 따라 효율적으로 작성해야 한다. 커뮤니티 게시판 예시 일대다 관계 1:N 속해지는 테이블에 속하는 id를 추가 N에 1의 key를 추가 데이터의 중복이 없다. 이를 정규화 상태 라고 한다. 다대다 관계 N:M 두 번의 1:N 관계를 거치면 정규화된 다대다 관계 성립 정규화를 거치지 않은 테이블들은 데이터들의 중복이 일어나게 된다. 그리고 추가적으로 저장해야할 공간 또는 로직이 달라질 수도 있다. 일대일 관계 1:1 저장하는 정보가 의미적으로 맞지 않거나 성능을 향상시켜야 할 때 2개의 테이블로 나누어서 작업

여러 테이블의 컬럼정보를 결합하는 구문이다. INNER JOIN, OUTER JOIN INNER JOIN : 두 테이블 값이 연결되는 값만 출력 OUTER JOIN : 두 테이블 값이 연결되지 않아도 전부 출력 LEFT JOIN : 앞에 테이블과 연결되면 오른쪽 테이블 로우의 정보를 붙이고 없으면 빈 값으로 출력 RIGHT JOIN : 뒤의 테이블에 연결되면 왼쪽 테이블 로우의 정보를 붙이고 없으면 빈 값으로 출력 FULL JOIN : 연결된 로우는 값을 출력하고 연결되지 않은 로우도 NULL로 값을 출력 JOIN 문이 사용되는 위치? FROM 뒤에 선언한다