SQL

SQLD_중요 개념 총정리SQL 자격검정 실전문제(aka.노랭이)를 풀면서 중요하다고 생각하거나, 3회독에 틀린 문제를 오답노트 겸 다시한번 개념 정리를 하기위해 작성합니다. 실제로 SQLD 기출에서 이 유형의 문제들이 중요하다는 느낌을 받았습니다.#[개념] - (문제번호) 개정 후 노랭이 기준)제 1 과목#스키마 - (5번, 6번)외부 스키마- 여러 사용자 관점으로 구성하는 것- 사용자나 프로그래머가 개인의 입장에서 필요한 데이터베이스의 논리적 구조를 정의개념 스키마- 조직 전체를 관장하는 입장(통합관점)에서 데이터베이스를 정의한 것내부 스키마 - 데이터베이스의 물리적 저장구조를 정의#엔터티 유형 - (12번)유형과 무형유형 엔터티 - 물리적 형태 존재, 안정적, 지속적개념 엔터티 - 물리적 형태 x사..
소계 함수 SQLD 공부중 SQL 활용 부분에서 ROLLUP과 CUBE가 이해가 잘 안가서 작성합니다.손으로는 뭔가 잘 와닿지 않아서 Chat GPT와 함께 합니다.ROLLUPROLLUP은 간단한 예를 들면,ROLLUP(A, B)라는 구문이 나오면, A별, (A,B)별 총 합계를 나타낸다. 사실 이말은 예시가 없으면 이해가 잘 안되기 때문에 GPT와 함께 간단한 예시를 살펴보며 이해를 하겠습니다.우선 테이블을 하나 만들어주겠습니다.-- DEPT 테이블 예시CREATE TABLE DEPT ( DEPTNO INT, DNAME VARCHAR(50));INSERT INTO DEPT (DEPTNO, DNAME) VALUES(10, 'ACCOUNTING'),(20, 'RESEARCH'),(30, 'SAL..
관리구문DML(Data Manipulation Language)INSERT, UPDATE, DELETE, MERGECommit or Rollback 필수INSERT(삽입)테이블에 행을 삽입할 때작성하지 않으면 NULL 입력INSERT INTO TABLE1 VALUE(V1, V2, ...);INSERT INTO TABLE1(COL1, COL2, ...) VALUE(V1, V2, ...);UPDATE(수정)데이터를 수정, 컬럼 단위 수행UPDATE TABLE1 SET COL1 = 11220 WHERE 조건;--------------UPDATE TABLE1 SET COL1 = 11220, COL2 = 5500 WHERE 조건;DELETE(삭제)데이터를 삭제할 때, 행 단위 수행DELETE TABLE1 ..
SQL 활용서브쿼리SQL문 안의 또 다른 SQL문GROUP BY 절 제외 모두 사용 가능스칼라 서브쿼리(SELECT 절)주로 서브쿼리를 하나의 컬럼으로 사용하기 위해SELECT COL1, (SELECT COL2 FROM TABLE2 WHERE 조건) FROM TABLE1;인라인 뷰(FROM 절)주로 서브쿼리를 테이블처럼 사용하기 위해SELECT COL1 FROM (SELECT COL2 FROM TABLE1) WHERE 조건;WHERE 절 서브쿼리가장 흔한 서브쿼리값의 전달을 목적SELECT COL1 FROM TABLE1 WHERE 조건연산자 (SELECT COL2 FROM TABLE2 WHE..
SQL 기본데이터 무결성개체 무결성- 기본키는 NULL 값이나 중복값을 가질 수 없음참조 무결성- 외래키는 NULL이거나 참조 테이블의 기본키와 동일도메인 무결성- 속성 값이 정의된 도메인에 속한 값NULL 무결성- 특정 속성에 NULL을 허용하지 않는 것고유 무결성- 특정 속성에 값이 중복되지 않는 것키 무결성- 하나의 관계에는 적어도 하나의 키가 존재해야 함SQL 종류DDL(Data Definition Language)CREATE, ALTER, DROP, TRUNCATEDML(Data Mnipulation Language)INSERT, DELETE, UPDATE, MERGEDCL(Data Control Language)GRANT, REVOKETCL(Transaction Control Language)..
데이터 모델과 SQL정규화데이터의 중복을 제거하고, 무결성을 유지데이터를 분해하는 과정논리 데이터 모델링 수행 시점에서 고려이상현상삽입이상, 삭제이상, 갱신이상삽삭갱(삽살개)로 외웠음(feat.정처기)정규화 단계(원-부-이-결-다-조)제 1 정규화(1NF)모든 속성은 반드시 하나의 값만 가짐(원자성)제 2 정규화(2NF)완전 함수 종속, 기본키의 부분집합이 결정자가 되면 안된다제 3 정규화(3NF)이행 종속을 없애도록 테이블을 분해A->B, B->C => A->CBCNF 정규화모든 결정자가 후보키가 되도록 테이블 분해제 4 정규화(4NF)다중값 종속성 제거제 5 정규화(5NF)조인에 의한 종속성 발생시 분해반정규화(역정규화)성능을 위해 중복을 허용하고, 조인을 줄이는 것 트랜잭션하나의 논리적, 연속적 업..
데이터 모델링의 이해모델링?현실을 단순화 하여 표현하는 것특징단순화- 핵심 요소에 집중하고 불필요한 세부 사항 제거추상화- 일정 형식에 맞춰 간략하게 표현명확화- 애매모호함을 제거하고 정확하게 현상을 기술하는 과정유의점중복- 테이블에 정보가 중복되지 않게 하는것비유연성- 사소한 변화에 잦은 변경이 되지 않도록 주의비일관성- 데이터 상호 연관 관계 명확히 정의3가지 요소엔티티(대상)속성관계모델링 3단계개념적 모델링- 추상화 수준 가장 높음, ERD 작성논리적 모델링- 재사용성 높음, 데이터 정규화 수행물리적 모델링- 물리적으로 생산하는 과정, 추상화 수준 가장 낮음ERD피터 첸이 만든 표기법, 모델링 표준엔터티 간의 관계 표현 다이어그램실선 : 식별자 관계(부모 엔터티 식별자가 자식 엔터티의 주식별자)점..
고민하는만두
'SQL' 카테고리의 글 목록