SubQuery하나의 쿼리 안에 존재하는 또 다른 쿼리바깥에 있는 엄마쿼리를 메인쿼리 - 안에 있는 아기쿼리를 서브쿼리위치에 따른 SubQuerySELECT 절FROM 절WHERE 절, HAVING 절Scalar SubQueryInline ViewNested SubQuery Scalar SubQuery주로 SELECT 절에 위치하지만, Column이 올 수 있는 대부분의 위치에 사용 가능반드시 하나의 값만을 반환해야 하며, 그렇지 않은 경우 에러 발생Inline ViewFROM 절 등 테이블명이 올 수 있는 위치에 사용 가능Nested SubQueryWHERE 절과 HAVING 절에 사용 가능Main Query와의 관계에 따라 나눌 수 있음Uncorrelated SubQuerycorrelated SubQ..
관계형 데이터베이스 개요DB데이터들을 저장하는 공간용도와 목적에 맞는 데이터들끼리 모아서 저장 관계형 데이터베이스 (Relational DB)관계형 데이터 모델에 기초를 둔 DB모든 데이터를 2차원 테이블 형태로 표현한 뒤 각 테이블 간의 관계 정의RDBMS (Relational DB Management System) : RDB를 관리, 감독하기 위한 시스템 -> Oracle, SQL Server, MySQL, MariaDB, PostgreSQL 등이 이에 속함.TABLE엑셀을 작성할 때 흔히 이용하는 표 형식Row : 각각의 가로 행Col : 세로 열로, 속성이라고도 표현한다. 관계형 데이터베이스의 기본 단위이고 DB는 여러 개의 테이블로 구성된다.TABLE 형태로 데이터를 저장하는 주된 목적은 데이터..
Normalization데이터 정합성 (데이터의 정확성과 일관성을 유지하고 보장)을 위해 Entity를 작은 단위로 분리하는 과정모든 Entity를 무작정 분리하면 안되고 일정한 Rule 존재데이터의 입력, 수정, 삭제 성능은 향상되나 조회 성능은 떨어질 수 있음1️⃣ 제1정규형모든 속성은 반드시 하나의 값만 가져야 함하나의 속성이 다중값을 가지는 경우 Application 에서 데이터를 꺼내 쓸 때 불필요한 split 사용 -> 공간 낭비2️⃣ 제2정규형Entity의 모든 일반속성은 반드시 모든 주식별자에 종속되어야 함3️⃣ 제3정규형주식별자가 아닌 모든 속성 간에는 서로 종속될 수 없음‼️ 주의사항지나친 정규화는 오히려 성능 저하를 일으킬 수 있으므로 주의! ("적당히")De-Normalization..
Data Modeling 이해Modeling현실 세계를 단순화하여 표현하는 기법특징Abstruction (추상화) : 아이디어나 개념을 간략하게 표현Simplication (단순화) : 단순하고 쉽게 표현Clarity (명확성) : 명확하게 해석할 수 있도록 표현관점Data, What? : 어떤 데이터, 어떤 관계성?Process, How? : 처리하고 있는 일, 그리고 처리해야 하는 일?Interaction : Process의 흐름에 따라 데이터의 영향?품질Duplication (중복) XInflexibility (비유연성) XInconsistency (비일관성) X단계Conceptual : 업무 중심적이고 포괄적인 수준Logical : 재사용성Physical : 실제 데이터베이스로 구현독립성 ERD ..