정규화란? - 데이터 처리에 있어 입력, 수정, 삭제의 이상 현상을 제거하여 안정적 처리(Consistency)를 보장하기 위한 방법 - 기본 원칙은 테이블에 중복된 데이터가 없도록 하는 것 - 다양한 유형의 검사를 통해 데이터 모델을 더욱 구조화하고 개선시켜 나가는 절차에 관련된 이론 함수 종속성 결정자(Determinant, X, Primary Key) → 종속자(Dependent, Y, 나머지 속성들) 종속자는 근본적으로 결정자에 함수적으로 종속관게를 가지고 있음 ex) 주민등록번호 -> (이름, 출생지, 주소) —> 이름, 출생지, 주소는 주민등록번호에 함수 종속성을 가지고 있음 정규화 단계 제 1 정규화 한 칼럼엔 한 개의 데이터만 (함수의 속성값을 갖는 속성을 분리) PK(Primary Key..
**서브쿼리란? 하나의 쿼리 문장 내에 포함된 또 하나의 쿼리 문장. 비교연산자의 오른쪽에 기술해야 하고 반드시 괄호 안에 넣어야 함. 메인 쿼리가 실행되기 이전에 한 번만 실행됨. SQL의 기본 문법이자 가장 자주쓰이는 SELECT, WHERE, FROM. 서브쿼리를 각각의 어느 위치에서 사용하냐에 따라 나누어진다. 각각의 종류에 따라 살펴보자. SELECT 절 서브쿼리(스칼라 서브쿼리) 스칼라 서브쿼리 ( Scalar Subqueries ) 라고 불리며 SELECT 절 안에 서브쿼리가 들어있다. 이 때, 서브쿼리의 결과는 반드시 단일 행이나 SUM, COUNT 등의 집계 함수를 거친 단일 값으로 리턴되어야 한다. 이유는 서브쿼리를 끝마친 값하나를 메인쿼리에서 SELECT 하기 때문. 예를 들어 홍길동..
목차 1) 마스터 데이터의 중복 검출하기 2) 로그 중복 검출하기 19강 데이터 중복 검출하기 1) 마스터 데이터의 중복 검출하기 키가 중복되는 데이터의 존재 확인하기 데이터 로드할 때 실수로 여러 번 로드되어 같은 데이터 가진 레코드가 중복 생성된 경우 마스터 데이터의 값을 갱신할 때 문제가 발생해서, 오래된 데이터와 새로운 데이터가 서로다른 레코드로 분리된 경우 운용상의 실수로 같은 ID를 다른 데이터에 재사용한 경우 일단, 마스터 데이터에 중복이 존재하는지 확인해야함. #19-1 키의 중복을 확인하는 쿼리 SELECT COUNT(1) AS total_num , COUNT(DISTINCT id) AS key_num FROM mst_categories ; #실행 결과, 전체 레코드 수와 유니크한 키의 ..