본문 바로가기

반응형

Data Science/SQLD

(24)
[SQLD] SQL 기본 핵심 요약 및 예제 2절. DDL 1. 데이터 유형 더보기 CHARACTER - 고정길이 문자열 정보 VARCHAR - 가변길이 문자열 정보 NUMERIC - 정수, 실수 등 숫자 정보 DATETIME - 날짜와 시각 정보 -> CHAR와 VARCHAR : 저장 영역과 문자열의 비교 방법 차이 CHAR : 실제 데이터 크기만 필요함 -> 길이가 다양한 칼럼, 정의된 길이와 실제 데이터 길이에 차이가 있는 칼럼 또한 공백을 채워서 비교해 앞에서부터 한 문자씩 비교 -> 끝의 공백만 다른 문자열은 같다고 판단 VARCHAR : 맨 처음부터 한 문자씩 비교 -> 공백도 하나의 문자로 취급, 끝의 공백이 다르면 다른 문자로 판단 즉, VARCHAR, NUMERIC : 정의한 길이와 자릿수는 최대한의 한계값을 정의 2. CREATE..
[SQLD] 데이터 모델링의 이해 1-4. 관계 1. 관계의 개념 가.관계의 정의 : 엔터티의 인스턴스 사이에서의 논리적인 연관성으로서 존재의 형태로서나 행위로서 서로에게 연관성이 부여된 상태 -> 엔터티와 엔터티 간의 연관성을 표현. [즉, 엔터티의 정의에 따라, 속성 정의 및 관계 정의에 따라 변할 수 있다.] 나. 관계의 페어링 : 엔터티 안에 인스턴스가 개별적으로 관계를 가지는것 -> 이것의 집합을 관계로 표현한다. [즉, 개별 인스턴스가 각각 다른 관계를 갖는다면, 두 개 이상의 관계 형성 가능] 관계 페어링 : 각각의 엔터티의 인스턴스들은 자신이 관련된 인스턴스들과 관계의 어커런스로 참여하는 관계 강사1 정성철 강사1의 학생 이춘식, 황종하 강사2 조시형 강사2의 학생 황종하 각각의 관계 강의 -> 관계 페어링 : 엔터티내에 인스턴스와 인스..
[SQLD] 데이터 모델링의 이해 1-3. 속성 1. 속성의 개념 : 업무에서 필요로 하는 인스턴스로 관리하고자 하는 의미상 더 이상 분리되지 않는 최소의 데이터 단위 업무에서 필요로 한다. 의미상 더 이상 분리되지 않는다. 엔터티를 설명하고 인스턴스의 구성요소가 된다. 2. 엔터티, 인스턴스와 속성, 속성값에 대한 내용과 표기법 가. 엔터티, 인스턴스, 속성, 속성값의 관계 엔터티 : 두 개 이상의 인스턴스가 존재 / 각각의 엔터티에 고유한 성격을 표현하는 두 개 이상의 속성정보 -> 엔터티를 구성하는 특성이 무엇인지 / 각각의 인스턴스들은 어떤 성격의 데이터로 구성되는지 파악 분석단계 : 여러 개의 인스턴스가 가지는 동일한 성격이 무엇인지 파악하고 이름을 부여 -> 속성으로 기술 Ex) 사원 : 이름, 주소, 전화번호, 직책 사원이라는 엔터티에 속..
[SQLD] 데이터 모델링의 이해 1-2. 엔터티 1. 엔터티의 개념 : 실체, 객체 -> 사람, 장소, 물건, 사건, 개념 등의 명사 -> 업무상 관리가 필요한 관심사 -> 저장이 되기 위한 어떤 것 즉, 업무에 필요하고 유용한 정보를 저장, 관리하기 위한 집합적인 것 엔터티 : 동질성을 가진 인스턴스들이나 그들이 행하는 행위의 집합 -> 그 집합에 속하는 개체들의 특성을 설명할 수 있는 속성(Attribute)을 갖는다. 속성 : 전체가 공유하는 공통속성 : 일부만 해당하는 개별속성 엔터티 : 인스턴스의 집합 인스턴스 : 엔터티의 하나의 값 2. 엔터티와 인스턴스에 대한 내용과 표기법 과목, 강사, 사건 : 엔터티 수학, 영어 : 과목의 인스턴스 이춘식, 조시형 : 강사의 인스턴스 2010-001, 2010-002 : 사건의 인스턴스 [오브젝트 모델..
[SQLD] 데이터 모델과 성능 1-1. 성능 데이터 모델링의 개요 1. 성능 데이터 모델링의 정의 성능이 저하되는 데이터 모델의 경우 (1) 데이터 모델 구조 (2) 데이터가 대용량 (3) 인덱스 특성을 충분히 고려하지 않고 인덱스를 생성 일반적인 성능이 가리키는것, 데이터 조회의 성능을 의미 -> 일반적인 트랜잭션의 성격이 조회의 패턴을 가지고 있으며, 업무에 따라서 입력/수정/삭제인 경우도 있다. 작업 유형 -> 목표 설정 -> 정확한 성능향상 모델링 성능 데이터 모델링 : 데이터베이스 성능향상을 목적으로, 설계 단계의 데이터 모델링 부터 -> 정규화, 반정규화, 테이블통합 및 분할, 조인구조, PK, FK 등을 반영 성능 데이터 모델링 (1) 반정규화 (2) 정규화 (3) 인덱스의 특징을 고려한 칼럼 순서 변형 (4) 대량의 데이터 특성의 경우 테이블을 수직 또는..
[SQLD] SQL 기본 1-9. 조인 1. JOIN 개요 : 두 개 이상의 테이블 들을 연결 또는 결합해 데이터를 출력하는 것 일반적인 경우 : PK나 FK 값의 연관에 의해 JOIN이 성립 특수한 경우 : 논리적인 값들의 연관을 이용한 JOIN 단, FROM 절에 여러 테이블이 나열되더라도 SQL에서 데이터를 처리할 때는 단 두 개의 집합 간에만 조인 발생 FROM 절에 A, B, C 테이블이 나열되었더라도 특정 2개의 테이블만 먼저 조인 처리, 2개의 테이블이 조인되어서 처리된 새로운 데이터 집합과 남은 한 개의 테이블이 다음 차례로 조인 A, B, C, D 4개의 테이블을 조인 시 : ( ( (A JOIN D) JOIN C) JOIN B) -> A, D -> , C-> ,B [옵티마이저에 의한 조인 순서 결정] 2. EQUI JOIN ..
[SQLD] SQL 기본 1-8. ORDER BY절 1. ORDER BY 정렬 : SQL 문장으로 조회된 데이터를 목적에 맞게 특정 칼럼 기준 정렬해 출력 :칼럼명 대신에 SELECT절에서 사용한 ALIAS명이나 칼럼 순서를 나타내는 정수도 사용 가능 : Default는 오름차순이며 SQL 문장의 제일 마지막에 작성 SELECT 칼럼명 [ALIAS명] FROM 테이블명 [WHERE 조건식] [GROUP BY 칼럼이나 표현식] [HAVING 그룹조건식] [ORDER BY 칼럼이나 표현식 [ASC 또는 DESC]]; (1) 선수 테이블에서 선수들의 이름, 포지션, 백넘버를 출력하는데 사람 이름을 내림차순으로 정렬해서 출력 더보기 SELECT PLAYER_NAME 선수명, POSTION 포지션, BACK_NO 백넘버 FROM PLAYER ORDER BY PLA..
[SQLD] SQL 기본 1-7. GROUP BY절, HAVING 절 1. 집계 함수 -여러 행의 그룹이 모여서 그룹당 단 하나의 결과를 돌려주는 함수 -GROUP BY는 행들을 소그룹화 -SELECT, HAVING, ORDER BY절에 사용가능 데이터 분석 함수 (1) GROUP 함수 : ROLLUP, CUBE, GROUPING SETS (2) WINDOW 함수 집계 함수명 ( [DISTINCT | ALL ] 칼럼이나 표현식) - ALL : Default 옵션이므로 생략 가능 - DISTINCT : 같은 값을 하나의 데이터로 간주할 때 사용 집계 함수의 종류 COUNT(*) COUNT(표현식) SUM([DISTINCT | ALL] 표현식) AVG([DISTINCT | ALL] 표현식) MAX([DISTINCT | ALL] 표현식) MIN([DISTINCT | ALL] 표..

반응형