1. 모델링의 이해 가. 모델링의 정의 모델이란 모형(模型), 축소형(縮小型)의 의미. 다양한 현상에 대해서 일정한 표기법에 의해 표현해 놓은 것. 사람이 어떤 목적을 달성하기 위해 커뮤니케이션의 효율성을 극대화한 고급화된 표현방법으로 설명될 수 있다. 모델링은
엔터티의 개념 엔터티는 우리말로 실체, 객체라고 한다. 엔터티에 대해서 데이터 모델과 데이터베이스에 권위자가 정의한 사항은 다음과 같다. > 변별할 수 있는 사물 - Peter Chen (1976) - 데이터베이스 내에서 변별 가능한 객체 - C.J Date (19
속성(Attribute)의 개념 속성이란 사전적인 의미로는 사물의 성질, 특징 또는 본질적인 성질, 그것이 없다면 실체를 생각할 수 없는 것으로 정의할 수 있다. 사물이나 개념이 어떤 것인지를 나타내고 그것을 다른 것과 구별하는 성질이라고 할 수 있다. 데이터 모델
관계의 개념 가. 관계의 정의 관계를 사전적으로 정의하면 상호 연관성이 있는 상태이다. 데이터 모델에 대입하면 "엔터티의 인스턴스 사이의 논리적인 연관성으로서 존재의 형태로서나 행위로서 서로에게 연관성이 부여된 상태"라고 할 수 있다. 이미지 에러 나. 관계의 패
식별자 개념 식별자 : 하나의 엔터티에 구성되어 있는 여러 개의 속성 중에 엔터티를 대표할 수 있는 속성. 하나의 엔터티는 반드시 하나의 유일한 식별자가 존재해야 한다. 이미지 에러 식별자의 특징 주식별자 > 주식별자에 의해 엔터티 내에 모든 인스턴스들이 유일하
제 1절 정규화 > 제1정규형 : 도메인은 원자값. 제2정규형 : 부분 함수적 종속을 제거. 제3정규형 : 이행적 함수 종속 제거. BCNF : 결정자이면서 후보키가 아닌 것 제거. 제4정규형 : 다치 종속 제거. 제5정규형 : 조인 종속성 이용. 제1정규형 모든
조인 조인 : 관계를 맺는다는 건 식별자를 상속하고, 상속된 속성을 매핑키로 활용해 데이터를 결합하는 걸 SQL에서 조인(join)이라고 한다. 여기서는 고객 엔터티의 식별자인 고객번호를 주문 엔터티에 상속시킨 것이다. 주문번호가 1100001인 주문의 고객명은?
트랜잭션 : 데이터베이스의 논리적 연산단위. 하나의 업무단위로 묶여서 처리돼야 하는 거. 하나의 묶음. 아래는 데이터 모델링 진행 시 트랜잭션을 표현한 그림이다. 주문과 주문상세의 데이터는 함께 발생되는지, 아니면 독립적으로 발생되는지 알아야 한다. 위의 IE 표기
위의 모델에서 주문금액과 주문취소금액은 Null 허용인 걸 알 수 있다. IE표기법에서는 Null 허용 여부를 알 수 없지만, 바커 표기법에서는 속성 앞에 동그라미가 Null 허용 속성임을 의미한다. Null 값의 연산은 언제나 Null이다 위의 표는 주문 모델
본질식별자 : 업무에 의해 만들어진 식별자 인조식별자 : 업무적으로 만들어지지는 않지만 본질식별자가 복잡한 구성을 갖고 있으므로 인위적으로 만든 식별자 주문 상품 모델의 식별자가 본질식별자이다. 주문상품 모델은 주문 시 구매한 상품 정보를 관리한다. 위의 표는 하나
데이터베이스 데이터베이스란 넓은 의미로 일상적인 정보를 모아 놓은 자체. 일반적으로는 기업이나 조직, 개인이 필요에 따라 (예, 부가가치가 발생하는) 데이터를 일정한 형태로 저장해 놓은 것을 의미. DBMS란 효율적인 데이터 관리, 예기치 못한 사건으로 인한 데이터
SELECT SELECT [ALL/DISTINCT] 칼럼명, 칼럼명, ... FROM 테이블명; ALL : 중복 데이터가 있어도 모두 출력. Default 옵션이다. DISTINCT : 중복된 데이터가 있으면 1건으로 처리해 출력한다. > [예제] SELECT P
내장 함수 개요 벤더에서 제공하는 내장 함수와 사용자가 정의할 수 있는 함수로 구분. 벤더마다 차이가 있다. 내장 함수는 다시 함수 입력 값이 단일행 값이 입력되는 단일행 함수와 여러 행의 값이 입력되는 다중행 함수로 나눌 수 있다. 다중행 함수는 집계함수, 그룹
WHERE 조건절 개요 WHERE을 이용해 자료를 제한할 수 있다. WHERE절은 두 개 이상의 테이블에 대한 조인 조건을 기술하거나 결과를 제한하기 위한 조건을 기술할 수도 있다. WHERE절에 조건이 없는 FTS(Full Table Scan) 문장은 SQL 튜닝의
집계함수 집계함수란 여러 행들의 그룹이 모여서 그룹당 단 하나의 결과를 돌려주는 다중행 함수이다. 집계함수의 특성 > 여러 행들의 그룹이 모여 그룹당 단 하나의 결과를 돌려주는 함수 GROUP BY 절은 행들을 소그룹화한다. SELECT 절, HAVING 절, OR
ORDER BY ORDER BY는 나오는 데이터들을 정렬하는 기능을 제공합니다. 정렬되지 않은 데이터들은 사용자가 사용하기에 불편합니다. 이번에 사용된 테이블은 EMP에 ENAME, SAL, DEPTNO 컬럼 3개입니다. SELECT * FROM [테이블명] OR
사용될 테이블은 EMP와 DEPT입니다. 조인 개요 조인이란 두 개 이상의 테이블들을 연결해 데이터를 출력하는 것이다. 조인은 관계형 데이터베이스의 가장 큰 장점이면서 핵심 기능이다. 일반적인 경우 행들은 PK와 FK 값의 연관에 의해 조인이 성립된다. 하지만 어
EMP 테이블와 DEPT 테이블을 사용합니다. FROM 절 조인 형태 ANSI/ISO SQL에서 표시하는 FROM 절의 조인 형태는 다음과 같다. > INNER JOIN NATURAL JOIN USING 조건절 ON 조건절 CROSS JOIN OUTER JOIN I
서브 쿼리 서브 쿼리란 하나의 SQL 문안에 포함돼 있는 또 다른 SQL 문이다. 그림과 같이 메인 쿼리가 서브 쿼리를 포함하는 종속적인 관계. 조인은 조인에 참여하는 모든 테이블이 대등한 관계라서 참여하는 모든 테이블의 칼럼을 어느 위치에서라도 자유롭게 사용 가능
집합 연산자 두 개 이상의 테이블에서 조인을 사용하지 않고 연관된 데이터를 조회하는 또 다른 방법이다. 조인은 조인 조건을 통해 여러 테이블의 행과 행을 서로 연결한다. 집합 연산자는 여러 개의 결과 집합 간의 연산을 통해 결합하는 방식을 사용한다. 즉, 집합 연산
데이터 분석 개요 ANSI/ISO SQL 표준은 데이터 분석을 위해서 다음의 세 가지 함수를 정의하고 있다. > AGGREGATE FUNCTION GROUP FUNCTION WINDOW FUNCTION AGGREGATE FUNCTION GRUOP FUNCTION의 한
윈도우 함수 개요 기존 관계형 데이터베이스는 칼럼과 칼럼 간의 연산, 비교, 연결이나 집합에 대한 집계는 쉬운 반면, 행과 행간의 관계를 정의하거나 행과 행간의 비교, 연산하는 것을 하나의 SQL 문으로 처리하는 것은 매우 어려운 문제였다. 분석 함수나 순위 함수로도
ROWNUM 슈도 칼럼 테이블이나 집합에서 원하는 만큼의 행만 가져오고 싶을 때 WHERE 절에서 행의 개수를 제한하는 목적으로 사용한다. 한 건의 행만 가져오고 싶을 때는 로 작성한다. 두 건 이상의 N 행을 가져오고 싶을 때는 ROWNOM = N;처럼 사용할
개요 계층형 데이터가 테이블에 존재하는 경우 데이터를 조회하기 위해 계층형 질의를 사용한다. 계층형 데이터란 동일 테이블에 계층적으로 상위와 하위 데이터가 포함된 데이터를 말한다. 셀프 조인 셀프 조인이란 동일 테이블 사이의 조인을 말한다. 칼럼 명들이 모두 동일하므
PIVOT은 회전시킨다는 의미를 갖고 있다. PIVOT 절은 행을 열로, UNPIVOT 절은 열을 행으로 회전시킨다. PIVOT 절 PIVOT 절의 구문은 아래와 같다. aggregate_function은 집계할 열을 지정한다. FOR 절은 PIVOT할 열을 지정한
정규 표현식은 문자열의 규칙을 표현하는 검색 패턴으로 주로 문자열 검색과 치환에 사용된다. 기본 문법 가. POSIX 연산자 . : 모든 문자와 일치(newline 제외) | : 대체 문자를 구분 \ : 다음 문자를 일반 문자로 취급 앵커는 검색 패턴의 시작과 끝
사용할 테이블 DML 문이란 관리할 자료들을 테이블에 입력, 수정, 삭제하는 문이다. INSERT 가. 단일행 INSERT 문 단일 행 INSERT 문은 VALUES 절을 포함하며, 한 번에 한 행만 입력된다. > INTO 절의 칼럼명과 VALUES 절의 값을
CREATE TABLE 테이블은 데이터베이스의 가장 기본적인 객체로, 행과 열의 구조로 데이터를 저장한다. 테이블 생성을 위해서는 해당 테이블에 입력될 데이터를 정의하고, 정의한 데이터를 어떠한 데이터 유형으로 선언할 것인지를 결정해야 한다. 가. 테이블과 칼럼 정