Cute Hello Kitty Kaoani

Database/SQL

Database/SQL

[SQL] 시퀀스 (Sequence)

시퀀스(SEQUENCE) 시퀀스는 호출될 때마다 자동으로 숫자를 생성하는 Oracle 객체로서 테이블의 특정 컬럼값을 넘버링하기 위해 사용된다. 주로 게시판의 글 번호에 순차적인 넘버링을 적용하는 경우에 사용된다. CREATE SEQUENCE 시퀀스명 [ START WITH n] [ INCREMENT BY n] [ MAXVALUE n | NOMAXVALUE ] [ MINVALUE n | NOMINVALUE ] [ CYCLE | NOCYCLE ] [ CACHE n | NOCACHE ] START WITH n : 시퀀스 번호의 시작값 (생략시 1부터 시작) INCREMENT BY n : 시퀀스 번호의 증가치 (생략시 1씩 증가) MAXVALUE n : 시퀀스가 가질 수 있는 최대값 MINVALUE n : 시..

Database/SQL

[SQL] 뷰 (VIEW)

뷰(VIEW)는 다른 테이블에서 유도된 가상의 테이블이다. 실제 데이터를 저장하고 있지 않으며 기반이 되는 물리적인 테이블을 기본 테이블(base table)이라 한다. 뷰를 기반으로 새로운 뷰를 정의할 수도 있다. 용도 데이터베이스에서 선택적으로 데이터조회 가능 ➞ 민감한 데이터를 가진 컬럼들 접근 제어 ➞ 보안 강화 결과를 검색하기 위한 복잡한 질의를 단순화 뷰 (VIEW) CREATE [OR REPLACE] VIEW 뷰이름 [컬럼별칭1, 컬럼별칭2] AS SELECT 컬럼1, 컬럼2 FROM 테이블명 [WITH CHECK OPTION [CONSTRAINT 제약조건명]] [WITH READ ONLY [CONSTRAINT 제약조건명] ]; 생성된 뷰를 수정하기 위해서 CREATE OR REPLACE 명..

Database/SQL

[SQL] DDL (Data Definition Language, 데이터 정의어)

DDL(Data Definition Language)은 데이터베이스의 구조를 생성하거나 수정 및 삭제하는데 사용되는 SQL문이다. Oracle 에는 여러가지 Oracle 객체를 가지고 있다. [DB] Oracle의 5가지 객체 - Table, Index, View, Sequence, Synonym 객체 의미 💡 Table 데이터 저장소 💡 Index 테이블의 검색을 빠르게 💡 View 여러 테이블의 데이터를 조회하는 가상 테이블 💡 Sequence 테이블의 특정 컬럼값을 자동으로 넘버링 💡 Synonym 테이블 gangintheremark.tistory.com 1. CREATE CREATE문은 데이터베이스에서 테이블을 생성하는데 사용된다. CREATE TABLE [스키마].테이블명 ( 컬럼명1 데이터타입..

Database/SQL

[SQL] DML (Data Manipulation Language, 데이터 조작어)

DML (Data Manipulation Language, 데이터 조작어)은 데이터베이스의 테이블에 새로운 데이터를 저장 INSERT 하거나 삭제 DELETE 또는 수정 UPDATE 및 병합 MERGE 할 때 사용하는 조작어를 의미한다. INSERT문 INSERT 문은 테이블에 데이터를 저장하기 위한 데이터 조작어이다. -- 기본 INSERT INTO 테이블명 (컬럼명, 컬럼명2, ...) VALUES (값, 값2, ...) 하나의 테이블에 하나의 행을 저장하는 단일행 INSERT문 하나의 테이블에 여러 행을 저장하는 다중행 INSERT문 여러 테이블에 여러 행을 저장하는 다중 테이블 다중행 INSERT문 1. 단일행 INSERT문 INSERT INTO 테이블명 (컬럼명, 컬럼명2, ...) VALUES..

Database/SQL

[SQL] DDL, DML, DCL 이란?

DDL (Data Definition Language, 데이터 정의어) 데이터베이스의 구조를 생성하거나 수정 및 삭제하는데 사용되는 SQL문이다. [SQL] DDL (Data Definition Language, 데이터 정의어) DDL(Data Definition Language)은 데이터베이스의 구조를 생성하거나 수정 및 삭제하는데 사용되는 SQL문이다. Oracle 에는 여러가지 Oracle 객체를 가지고 있다. [DB] Oracle의 5가지 객체 - Table, Index, View, Sequenc gangintheremark.tistory.com DML (Data Manipulation Language, 데이터 조작어) 데이터베이스의 테이블에 새로운 데이터를 저장하거나 삭제 또는 수정 및 병합할 ..

Database/SQL

[SQL] 서브쿼리 (Sub Query)

서브쿼리 서브쿼리는 SQL문을 실행하는데 필요한 데이터를 추가로 조회하기 위해 SQL문 내부에서 사용하는 SELECT문을 의미한다. 서브쿼리의 결과 값을 사용하여 기능을 수행하는 영역은 메인쿼리main query이다. 서브쿼리는 반드시 괄호 () 내에 작성한다. -- Whalen 사원의 월급보다 많이 받는 사원을 조회 SELECT last_name,salary FROM employees WHERE salary >= (SELECT salary FROM employees WHERE last_name='Whalen'); 💡 서브쿼리는 메인쿼리의 컬럼을 사용할 수 있지만, 메인쿼리는 서브쿼리의 컬럼을 사용할 수 없다. 서브쿼리 종류 종류 설명 사용 가능한 연산자 단일행 서브쿼리 서브쿼리 실행 결과가 한 개의 행..

Database/SQL

[SQL] ANSI 조인

ANSI조인은 모든 DBMS에서 사용 가능한 조인을 의미한다. 여러 테이블을 연결하는 조인 조건을 WHERE 절에 명시하지 않고 다른 방법을 통하여 기술한다. 따라서 조인 조건과 검색 조건을 분리하여 지정하기 때문에 가독성이 향상된다. Nature 조인 두 개의 테이블에서 공통 컬럼을 찾아서 조인하는 방식 반드시 한 개의 공통 컬럼이 있어야 하며, 두 개 이상의 공통 컬럼이 있다면 공통 컬럼들 값이 모두 같은 것만 조회 공통 컬럼을 사용할 때 별칭(alias)은 사용 불가능 -- employees 테이블과 departments 테이블의 공통 컬럼 조회 SELECT last_name 이름,department_name 부서명, department_id 부서번호 FROM employees NATURAL JOI..

Database/SQL

[Oracle/SQL] Oracle 조인

오라클 조인은 반드시 오라클에서만 사용 가능한 조인을 의미한다.오라클 조인 방법의 특징은 여러 테이블을 연결하는 조인 조건을 WHERE 절에 명시한다. Equi 조인 조인 대상이 되는 두 테이블에서 공통적으로 존재하는 컬럼의 값이 반드시 일치하는 행을 연결하여 데이터를 반환하는 조인이다. 기본키 primary key를 가진 테이블(master)과 참조키 foreign key를 가진 테이블(slave)을 조인할 때 사용한다. WHERE절에 두 개의 테이블을 연결할 조건인 조인 조건을 동등 연산자 =를 사용하여 명시한다. -- 사원 테이블(employees)과 부서 테이블(departments)의 사원명과 부서명 출력 SELECT last_name,department_name FROM employees, d..

Database/SQL

[SQL] Having 절

WHERE절은 SELECT문에서 조건을 지정하여 조건과 일치하는 데이터만 추출할 때 사용되며 HAVING 절은 GROUP BY절에 의해서 생성된 결과 중에서 조건과 일치하는 데이터를 추출할 때 사용된다 -- 부서별 월급 총액이 90000 이상인 부서만 조회 SELECT department_id, SUM(salary) FROM employees GROUP BY department_id HAVING SUM(salary) >= 90000 ORDER BY 1; HAVING절을 사용하여 부서별로 그룹핑한 결과 중에서 90000 이상인 검색조건을 추가하였다. -- 3000이상의 월급을 가지고 있는 사원들에 대해서만 부서별 월급총액이 90000 이상인 부서를 조회 SELECT department_id, SUM(sal..

Database/SQL

[SQL] GROUP BY 절

그룹함수의 실행 결과는 하나이기 때문에 단순 컬럼과 그룹 함수는 SELECT절에서 동시 사용이 불가능하다. 이 때, GROUP BY절을 사용하여 단순 컬럼을 그룹으로 묶으면 동시 사용이 가능하다. GROUP BY 절 GROUP BY는 특정 컬럼값을 기준으로 그룹으로 묶을 때 사용하는 방법이다. 주로 ~별 로 표현된다. (대표적으로 부서별, 성별, 직급별 또는 학년별) 💡 GROUP BY절을 작성할 때 알아야 될 작성 지침 SELECT절 뒤에 사용할 수 있는 컬럼은 GROUP BY뒤에 작성된 컬럼이거나 그룹함수가 적용된 컬럼만 사용 가능 WHERE 절에는 그룹함수를 사용할 수 없다. WHERE 절을 사용하여 행을 그룹으로 그룹핑(Grouping)하기 전에 제외 시킬 수 있다. 그룹으로 묶은 후 행을 제외 ..

Database/SQL

[SQL] 그룹 함수

그룹 함수는 여러 행 또는 테이블 전체에 대해 함수가 적용되어 하나의 결과를 반환하는 함수를 의미한다. 함수 설명 SUM 해당 컬럼의 총 합계 AVG 해당 컬럼의 평균 MAX 해당 컬럼의 최대값 MIN 해당 컬럼의 최소값 COUNT 행의 개수를 카운트 SELECT SUM(salary) 총액, TRUNC(AVG(salary)) 평균, MAX(salary) 최대값, MIN(salary) 최소값 FROM employees; COUNT 함수 COUNT( DISTINCT | ALL | 컬럼명 | * ) COUNT 함수에 특정 컬럼을 지정하면 널(null)값을 제외한 해당 컬럼값이 가지고 있는 행의 개수를 반환한다. 만약 DISTINCT 키워드를 사용하면 중복된 행을 제외하고 행의 개수를 반환하게 된다.

Database/SQL

[SQL] 단일 행 함수 (Single-Row Funtion)

단일행 함수(Single-Row Function) 란 모든 행에 대해서 각각 적용되어 행의 개수와 동일한 개수를 반환하는 함수를 의미한다. SELECT WHERE ORDER BY절에 사용 가능하다. 문자처리 함수 함수 설명 INITCAP() 첫 글자만 대문자로 변환 UPPER() 모든 글자를 대문자로 변환 LOWER() 모든 글자를 소문자로 변환 CONCAT() 두 개의 문자열을 연결 LENGTH() 문자열의 길이 반환 INSTR() 특정 문자의 위치 반환 SUBSTR() 문자의 일부분 반환 REPLACE() 특정 문자열을 치환 LPAD() 오른쪽 정렬 후 왼쪽에 생긴 빈 공백에 특정 문자 채우기 RPAD() 왼쪽 정렬 후 오른쪽에 생긴 빈 공백에 특정 문자 채우기 LTRIM() 왼쪽에서 특정 문자 삭제..

gangintheremark
'Database/SQL' 카테고리의 글 목록 (2 Page)