| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 | 31 |
- dml
- sub-query
- SubQuery
- 정보처리기사
- CTE
- DDL
- MySQL
- index
- databse
- db
- database
- ASW
- VPC
- NoSQL
- 탄력적 ip
- aws
- Github Actions
- 정규화
- mongoDB
- Transaction
- 보안 그룹
- PostgreSQL
- 정처기
- SQL
- redis
- SQLite
- EC2
- springboot
- Join
- DevOps
- Today
- Total
목록DataBase/SQL (11)
sellen
아래의 글과 함께 보시면 좋습니다.2025.07.16 - [Programming/DataBase] - 데이터 정의어 (DDL)관계MySQL, PostgreSQL 같이 외래키를 통해 테이블과 테이블 간의 연결을 생성할 수 있는 DB를 관계형 DB라고 합니다.관계의 종류로는 일대일 관계, 일대다 관계, 다대다 관계가 있습니다.객체 관계 다이어그램에서 테이블 간의 관계를 표현하기 위해 까마귀 발 표기법을 사용합니다.CREATE TABLE breeds ( breed_id BIGINT UNSIGNED PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50) NOT NULL, size_category ENUM('small', 'medium', 'big') DEFAULT 'sm..
💡 정처기를 공부하면서 배운 내용을 정리한 글입니다.DB 정규화 ( DB Normalization)관계형 데이터 모델에서 데이터의 중복성을 제거하여 이상 현상을 방지하고, 데이터의 일관성과 정확성을 유지하기 위해 무손실 분해하는 과정이다.정규화 목적중복 데이터를 최소화하여 테이블 불일치 위험을 최소화한다.수정, 삭제 시 이상 현상을 최소화함으로써 데이터 구조의 안정성을 최대화한다.효과적인 데이터 조회를 가능하게 한다.이상 현상테이블 조작 시 데이터들이 불필요하게 중복되어 예기치 않게 발생하는 곤란한 현상이다.이상 현상 종류학번이름교수번호지도교수202501Kim1Nico202502Lee2Lynn이러한 테이블이 있다고 가정하자.삽입 이상 (Insertion Anomaly)테이블에 데이터를 삽입할 때 의도와..
💡 정처기를 공부하면서 배운 내용을 정리한 글입니다.Join두 개 이상의 테이블을 연결하여 데이터를 검색하는 방법두 테이블로부터 관련된 row들을 결합하여 하나의 row로 만드는 가장 대표적인 데이터 연결 방법이다.Join 유형분류설명유형논리적 조인사용자 SQL 문에 표현되는 테이블 결합 방식내부 조인외부 조인물리적 조인DB 옵티마이저에 의해 내부적으로 발생하는 테이블 결합 방식중첩 반복 조인정렬 합병 조인해시 조인논리적 조인유형설명내부 조인(Inner Join)공통 존재 컬럼의 값이 같은 경우를 추출외부 조인(Outer Join)왼쪽 외부 조인(Left Outer Join)왼쪽 테이블의 모든 데이터와 오른쪽 테이블의 동일 데이터를 추출오른쪽 외부 조인(Right Outer Join)오른쪽 테이블의 모..
💡 정처기를 공부하면서 배운 내용을 정리한 글입니다.Sub-Query서브쿼리는 SQL 문 안에 포함된 또 다른 SQl 문을 의미한다.서브쿼리 유형동작 방식 기준서브쿼리 종류설명비연관 서브쿼리(Un-CorrelatedSub-Query)- 서브쿼리가 메인쿼리의 컬럼을 가지고 있지 않은 형태- 메인쿼리에 서브쿼리에서 실행된 결과를 제공하는 용도로 사용연관 서브쿼리 (Correlated Sub-Query)- 서브쿼리가 메인쿼리의 컬럼을 가지고 있는 형태- 메인쿼리가 먼저 수행되어 얻은 데이터를 서브쿼리의 조건에 맞는지 확인하는 용도로 사용데이터 형태 기준서브쿼리 종류 설명단일 행 (Single Row)서브쿼리- 결과가 항상 1건 이하인 서브쿼리- 단일 행 비교 연산자 [ =, =, ] 가 사용다중 행 (Mu..
💡 정처기를 공부하면서 배운 내용을 정리한 글입니다.인덱스데이터를 빠르게 찾을 수 있는 수단으로써, 테이블에 대한 조회 속도를 높여 주는 자료 구조이다.테이블의 특정 레코드 위치를 알려주는 용도로 사용한다.인덱스는 자동으로 생성되지 않는다.기본 키 (Primary Key) 컬럼은 자동으로 인덱스가 생성된다.연/월/일이나 이름을 기준으로 하는 인덱스는 자동으로 생성되지 않는다.인덱스가 없는 컬럼을 조회할 경우 테이블의 전체 내용을 하나씩 검색한다.테이블 전체 스캔 : Table Full Scan인덱스가 생성되어 있을 때 데이터를 빠르게 찾을 수 있다.인덱스 범위 스캔 : Index Range Scan인덱스 종류종류설명순서 인덱스(Ordered Index)- 데이터가 정령된 순서로 생성되는 인덱스- B-T..
💡 정처기를 공부하면서 배운 내용을 정리한 글입니다.View뷰는 논리 테이블로서 사용자에게 (생성하는 사용자가 아닌 사용하는 입장에서) 테이블과 동일하다.기존에 만들어 놓은 여러개의 물리 테이블에서 원하는 데이터만 가져와서 논리 테이블인 뷰를 생성할 수 있다.뷰의 장단점구분장단점설명장점논리적 독립성 제공- DB에 영향을 주지 않고 애플리케이션이 원하는 형태로 데이터에 접근 가능데이터 조작 연산 간소화- 애플리케이션이 원하는 형태의 논리적 구조를 형성하여 데이터 조작 연산을 간소화- 복수 테이블에 존재하는 여러 종류의 데이터에 대해 단순한 질의어 사용이 가능* SELECT * FROM {view_name};보안 기능 (접근제어) 제공- 특정 필드만을 선택해 뷰를 생성할 경우 애플리케이션은 선택되지 않은 ..
💡 정처기를 공부하면서 배운 내용을 정리한 글입니다.Transaction트랜잭션은 DB 시스템에서 하나의 논리적 기능을 정상적으로 수행하기 위한 작업의 기본 단위이다.트랜잭션 특징 (ACID)특징설명주요 기법원자성(Atomicity)- 트랜잭션을 구성하는 연산 전체가 모두 정상적으로 실행되거나, 모두 취소되어야하는 성질- 트랜잭션의 연산 전체가 성공 또는 실패 (All or Nothing) 되어야 하는 성질Commit / Rollback회복성 보장일관성(Consistency)- 시스템이 가지고 있는 고정요소는 트랜잭셔 수행 전과 트랜잭션 수행 완료 후의 상태가 같아야 하는 설징- 실행 전과 실행 후의 DB 상태가 제약 조건을 항상 만족해야 한다.무결성 제약조건동시성 제어격리성 = 고립성(Isolatio..
💡 정처기를 공부하면서 배운 내용을 정리한 글입니다.DDL : Data Definition Language테이블과 같은 데이터 구조를 정의하는 데 사용되는 명령어들로 특정 구조를 생성, 변경, 삭제, 이름을 바꾸는 데이터 구조와 관련된 명령어들을 DDL이라고 부른다.DDL의 대상DDL의 대상에는 도메인, 스키마, 테이블, 뷰, 인덱스가 있다.DDL 대상설명도메인 (Domain)- 하나의 속성이 가질 수 있는 원자값들의 집합- 속성의 데이터 타입과 크기, 제약조건 들의 정보스키마 (Schema)- DB의 구조, 제약 조건 등의 정보를 담고 있는 기본적인 구조- 스키마는 외부 / 개념 / 내부 3계층으로 구성되어 있음 테이블 (Table)- 데이터를 저장하는 항목인 필드들로 구성된 데이터의 집합체뷰 (Ta..
💡 정처기를 공부하면서 배운 내용을 정리한 글입니다.DCL : Data Control LanguageDCL은 DB 관리자가 데이터 보안, 무결성 유지, 병행 제어, 회복을 위해 사용하는 언어이다.DCL의 기능기능설명데이터 보안불법적인 사용자로부터 데이터를 보호하는 기능무결성 유지데이터의 정확성과 일관성을 유지하는 기능병행수행 제어여러 트랜잭션을 수행할 때 트랜잭션들이 DB의 일관성을 파괴하지 않도록 트랜잭션 간의 상호작용을 제어하는 기능회복DB에 장애가 발생할 경우, DB를 장애 발생 이전의 상태로 복원하는 기능DCL의 유형GRANT, REVOKE, COMMIT, ROLLBACK, SAVEPOINT(=CHECKPOINT)가 있다.COMMIT, ROLLBACK, SAVEPOINT(=CHECKPOINT)는..
💡 정처기를 공부하면서 배운 내용을 정리한 글입니다.DML : Data Manipulation Language데이터 조작어는 DB에 저장된 자료들을 입력, 수정, 삭제, 조회하는 언어이다.DML의 유형유형동작설명SELECT데이터 조회해당 테이블에서 전체 또는 조건을 만족하는 데이터들을 조회하여 임시 테이블로 출력하는 명령문INSERT데이터 생성해당 테이블에 새로운 데이터들을 삽입할 때 사용하는 명령문UPDATE데이터 변경해당 테이블에 있는 데이터 중 특정 데이터의 내용을 변경할 때 사용하는 명령문DELETE데이터 삭제해당 테이블에 있는 데이터 중에서 특정 데이터를 삭제할 때 사용하는 명령문DML의 명령어SELECT SELECT 명령어는 데이터의 내용을 조회할 때 사용하는 명령어이다.SELECT [ALL..