본문 바로가기

웹 개발

(140)
[Web_DBMS] 09 ● CASE문 CASE 컬럼명 WHEN 값 THEN 컬럼명 또는 값 END ● SUB QUERY 1. FROM 절 : IN LINE VIEW 2. SELECT 절 : SCALAR 3. WHERE 절 : SUB QUERY ● SQL 실행 순서 FROM > WHERE > GROUP BY > HAVING > SELECT > ORDER BY ● ROWNUM - 결과 행 앞에 1부터 1씩 증가하는 시퀀스를 붙여준다. ※ FROM절에서 AS 사용 - AS를 사용해서는 안되고 공백으로만 구분해야 한다. ● 옵티마이저(OPTIMIZER) - SQL을 가장 빠르고 효율적으로 수행할 최적의 처리 경로(최저 비용)를 생성해주는 DBMS 내부의 핵심 엔진 - 사용자가 쿼리문(SQL)으로 결과를 요청하면, 이를 생성하는 데 필..
[Web_DBMS] 08 ● 숫자형 함수 1. ABS() : 절대값 2. SIGN() : 정수 판별 3. MOD() : 나머지 4. CEIL() : 값보다 큰 최근접 정수(올림) 5. FLOOR() : 값보다 작은 최근접 정수(내림) 6. TRUNC() : 버림 7. ROUND() : 반올림 ● 집계 함수 - 여러 개의 값을 하나의 값으로 집계하여 나타낸다. - NULL은 포함하지 않는다. - WHERE 절에서는 사용할 수 없다. 1. AVG() : 평균 2. MAX() : 최대값 3. MIN() : 최소값 4. SUM() : 총 합 5. COUNT() : 개수 ● 정렬(ORDER BY) - ASC : 오름 차순(DEFAULT) - DESC : 내림 차순 ● GROUP BY(~별) GROUP BY 컬럼명 HAVING 조건식 - ..
[Web_DBMS] 07 ● AS(ALIAS) : 별칭 - 결과 테이블에 표현할 컬럼명을 변경하고자 할 때 사용한다. - 길고 복잡한 컬럼명을 쉽게 사용하기 위해 사용한다. 1. SELECT절 - 컬럼명 뒤에 AS 또는 한 칸 띄어쓰고 작성한다. ● CONCATENATION : 연결 (ex) '안녕' || '하세요' ● LIKE - 포함된 문자열 값을 찾고, 문자의 개수에 제한을 줄 수 있다. - % : 모든 것 - _ : 글자 수 (ex) '%A' : A로 끝나는 모든 값(FDNMSKA, 123FNDSA, ...) (ex) 'A%' : A로 시작하는 모든 값(ADSF, A2193DK, AAA, ADD, ...) (ex) 'A__' : A로 시작하면서 3글자인 값(ABC, AAA, ADD, ...) (ex) '_A' : A로 끝..
[Web_DBMS] 06 ● 조합키(복합키) - 두 개 이상의 컬럼을 하나의 PK로 설정 (1) PRIMARY KEY CONSTRAINT [제약조건명] PRIMARY KEY(컬럼명1, 컬럼명2, ...) (2) FOREIGN KEY CONSTRAINT [제약조건명] FOREIGN KEY(컬럼명1, ...) REFERENCES [부모 테이블명](부모컬럼명1, 부모컬럼명2, ...) ● TCL(Transaction Control Language) - 트랜젝션 제어어 1. 트랜젝션 - 하나의 작업 단위 2. COMMIT - 모든 작업을 확정하는 명령어 3. ROLLBACK - 이전 커밋한 지점(시점)으로 이동 ※ TRUNCATE는 테이블 내용을 전체 삭제하므로, DELETE보다 빠르게 처리할 수 있다. 대용량 데이터 처리에 유리하지만..
[Web_DBMS] 05 ● DML(Data Manipulation Language) - 데이터 조작어 1. SELECT : 조회(검색) (1) 원하는 컬럼을 골라서 조회할 때 SELECT [컬럼명1, 컬럼명2, ...] FROM [테이블명] WHERE 조건식; (2) 전체 컬럼을 조회할 때(대신 컬럼명을 직접 작성하는 것보다는 느리다.) SELECT * FROM [테이블명]; 2. INSERT : 추가 (1) 일부 컬럼을 생략할 수 있다.(이 때 default 제약조건이 발동된다.) INSERT INTO [테이블명] ([컬럼명1], [컬럼명2], [...]) VALUES([값1], [값2], [...]); (2) 모든 값을 전부 작성해야 되며, 컬럼명은 직접 작성하지 않는다. INSERT INTO [테이블명] VALUES([값..
[Web_DBMS] 04 실습(조합키(1)) 1. 요구사항 분석 - 꽃 테이블과 화분 테이블 2개가 필요합니다. - 꽃을 구매할 때 화분도 같이 구매합니다. - 꽃은 이름, 색상, 가격이 있습니다. - 화분은 제품번호, 색상, 모양이 있습니다. - 화분은 모든 꽃을 담을 수 없고 맞는 꽃들을 담아야 합니다. 2. 개념적 설계 3. 논리적 설계 4. 물리적 설계 5. 구현 - 테이블 생성(FLOWER) CREATE TABLE FLOWER( FLOWER_NAME VARCHAR2(1000), FLOWER_COLOR VARCHAR2(1000), FLOWER_PRICE NUMBER, CONSTRAINT PK_FLOWER PRIMARY KEY(FLOWER_NAME, FLOWER_COLOR) /*조합키일 경우 CONSTRAINT 명령어를 통..
[Web_DBMS] 03 ● 무결성 - 데이터의 정확성, 일관성, 유효성이 유지되는 것. (1) 정확성 : 데이터는 애매하지 않아야 한다. (2) 일관성 : 각 사용자가 일관된 데이터를 볼 수 있도록 해야 한다. (3) 유효성 : 데이터가 실제 존재하는 데이터여야 한다. 1. 개체 무결성 - 모든 테이블은 PK가 존재해야 한다. 2. 참조 무결성 - 두 테이블의 데이터가 항상 일관된 값을 가지도록 유지하는 것. 3. 도메인 무결성 - 컬럼의 타입, NULL값의 허용 등에 대한 사항을 정의하고, 올바른 데이터가 입력되었는 지를 확인하는 것 ● 모델링(기획) - 추상적인 주제를 RDBMS에 맞게 설계하는 것. 1. 요구사항 분석 - 회원, 주문, 상품 : 3가지를 관리하고자 한다. 2. 개념적 설계(개념 모델링) 3. 논리적 설계(..
[Web_DBMS] 02 ● FOREIGN KEY(FK) - 다른 테이블의 PK를 의미한다. - 보통 테이블끼리 관계를 맺을 때 사용한다. - 중복이 가능하다. ● 조합키 - 하나의 테이블에 2개 이상의 PK가 설정되어 있는 경우 - 하나의 PK는 중복이 가능하지만, 두 개 이상의 PK가 모두 중복이 되면 안된다. ● UNIQUE KEY(UK) - NULL은 허용하지만 중복을 허용하지 않는다. ● 컴파일 언어와 스크립트 언어 1. 컴파일 언어 - 파일 단위로 해석한다.(일괄처리) - 수정이 거의 없을 때 효율적이다. - 번역 파일이 생성된다. - JAVA, C언어, C++, ... 2. 스크립트 언어 - 한 줄 단위로 해석한다.(개별처리) - 빈번한 수정 시 효율적이다. - 번역 파일이 따로 생성되지 않고, 번역 하자마자 실행된..