SQL 10

[SQL] 뷰(View), 시퀀스(Sequence), 트리거(Trigger)

▶ 뷰(VIEW) - SELECT문을 저장해둘 수 있는 임시 테이블로 실제 데이터가 담겨있지는 않다. - 자주 사용하는 SELECT문을 저장해두면 긴 SELECT문을 매번 다시 기술할 필요없이 사용할 수 있다.  ● 사용법CREATE VIEW 뷰명AS (서브쿼리); ex)CREATE VIEW VW_EMPLOYEEAS (SELECT EMP_ID, EMP_NAME, DEPT_TITLE, SALARY, NATIONAL_NAME FROM EMPLOYEE JOIN DEPARTMENT ON(DEPT_CODE = DEPT_ID) JOIN LOCATION ON(LOCATION_ID = LOCAL_CODE) JOIN NATIONAL USING(NATIONAL_CODE));→ VW_EMPLOYEE 라..

SQL 2024.08.22

[SQL] PL / SQL

▶ PL / SQL (  Procedural Language/Structured Query Language ) - PL / SQL은 오라클 자체에 내장되어있는 절차적 언어로 SQL문장 내에서 변수의 정의, 조건(IF), 반복(FOR, WHILE)등을 지원하여 SQL의 단점을 보완하여 다수의 SQL문을 한번에 실행가능하도록 만든 언어이다.  ● PL / SQL 구조  - [선언부] : DECLARE로 시작, 변수나 상수를 선언 및 초기화하는 부분 (생략가능)  - 실행부 : BEGIN으로 시작, SQL문 또는 제어문 등의 로직을 기술하는 부분  - [예외처리부] : EXCEPTION으로 시작, 예외발생 시 해결하기 위한 부분 (생략가능)  ● 사용법[DECLARE 변수 || 상수 선언 및 초기화]BE..

SQL 2024.08.22

[SQL] DCL(데이터 제어어), TCL(트랜잭션 제어어)

▶ DCL(Data Control Language) - 사용자에게 시스템 권한 또는 객체 접근 권한을 부여하거나 회수하는 데 사용하는 구문이다. ※ 시스템권한 : DB에 접근하는 권한, 객체를 생성할 수 있는 권한※ 객체접근권한 : 특정 객체들을 조작할 수 있는 권한  ● DCL 종류  - GRANT  - REVOKE  ▶ GRANT - 사용자에게 데이터베이스 특정 권한을 부여하는 명령어이다.GRANT 권한1, 권한2, ... TO 사용자이름;  ▶ REVOKE - 사용자에게 부여되어있던 권한을 회수하는 데 사용하는 명령어이다.REVOKE 권한1, 권한2, ... FROM 사용자이름;    ▶ TCL(Transaction Control Language) - 트랜잭션을 제어할 때 사용하는 명령어로, DML..

SQL 2024.08.20

[SQL] 제약 조건

▶ 제약 조건 - 특정 컬럼에 원하는 데이터 값(유효한 형식의 값)만 유지하기 위해서 설정해주는 제약이다. - 데이터의 무결성을 보장하기 위한 목적으로 사용된다. ※ 무결성이란 데이터베이스에서 데이터가 정확하고 일관되며 신뢰할 수 있는 특징을 말한다.  ● 제약 조건의 종류  - NOT NULL  - UNIQUE  - CHECK  - PRIMARY KEY  - FOREIGN KEY  ● 제약 조건 부여 방식  ○ 컬럼 레벨 방식   - 제약 조건을 특정 컬럼에 직접적으로 설정하는 방법으로 컬럼의 정의와 함께 제약 조건을 지정한다.   - NOT NULL 제약조건은 컬럼 레벨 방식으로만 사용 가능하다.CREATE TABLE 테이블명( 컬럼명 자료형 [CONSTRAINT 제약조건명] 제약조건, 컬..

SQL 2024.08.20

[SQL] DDL(데이터 정의어)

▶ DDL(Data Definition Language) - 객체(구조)를 새로 생성하고, 변경하고, 삭제하는 데 사용하는 언어이다. 즉, 실제 데이터를 정의하는 것이 아닌 규칙을 정의하는 언어이다.  ● DDL종류  ○ CREATE  ○  ALTER  ○  DROP ※ 오라클에서의 객체 : 테이블, 뷰, 시퀀스, 인덱스, 패키지, 트리거, 프로시져, 함수, 동의어, 사용자 등이 있다.   ▶ CREATE - 객체를 새로 생성하는 데 사용하는 구문이다.  ● 테이블 생성  - 테이블 : 행과 열로 구성되는 가장 기본적인 데이터베이스 객체로 모든 데이터들이 테이블을 통해서 저장이 된다.  ● 자료형  ○ 문자( CHAR(BYTE크기)  |  VARCHAR2(BYTE크기) ) → 반드시 크기를 지정해야한다...

SQL 2024.08.20

[SQL] DML(데이터 조작어)

▶ DML (DATA MANIPULATION LANGUAGE) - 데이터를 조작하는 데 사용하는 언어로, 테이블의 데이터를 추가, 수정, 삭제할 때 사용한다. - 한 행 단위로 추가된다.  ● DML 종류  ○ INSERT(삽입)  ○ UPDATE(수정)  ○ DELETE(삭제)  ▶ INSERT(삽입) - 테이블에 새로운 행을 추가하는 데 사용하는 구문이다.  ● 사용법  1) 테이블의 모든 컬럼에 대한 값을 직접 작성하여 한 행을 추가할 때INSERT INTO 테이블명 VALUES(값1, 값2, 값3, ...);   2) 테이블의 내가 원하는 컬럼에 대한 값만 작성하여 한 행을 추가할 때INSERT INTO 테이블명(컬럼1, 컬럼3, 컬럼6, ...) VALUES(값1, 값3, 값6, ...);→ 한..

SQL 2024.08.19

[SQL] 서브쿼리

▶ 서브쿼리 - 하나의 SQL문 안에 포함된 또 다른 SELECT문을 '서브쿼리'라고 한다. - 메인 SQL문을 보조하는 역할을 하는 쿼리이다.  ● 서브쿼리의 종류  - 단일행 서브쿼리 : 서브쿼리의 조회 결과값이 오직 1개일 때 단일행 서브쿼리라고 한다.  - 다중행 서브쿼리 : 서브쿼리의 조회 결과값이 여러 행일 때 다중행 서브쿼리라고 한다.(N행 1열)  - 다중열 서브쿼리 : 서브쿼리의 조회 결과값이 한 행이지만 컬럼이 여러 열일 때 다중열 서브쿼리라고 한다.(1행 N열)  - 다중행 다중열 서브쿼리 : 서브쿼리의 조회 결과값이 여러 행 여러 열일 때 다중행 다중열 서브쿼리라고 한다.(N행 N열) ※ 서브쿼리의 결과값에 따라서 서브쿼리 앞쪽의 연산자가 달라진다.   ▶ 단일행 서브쿼리 - 서브쿼..

SQL 2024.08.14

[SQL] JOIN

▶ JOIN - 'JOIN'은 두 개 이상의 테이블에서 데이터를 조회하고자 할 때, 테이블들을 결합시켜 하나의 결과를 반환하는데 사용되는 구문이다.  ● 조인종류오라클 전용 구문ANSI 구문등가조인(EQUAL JOIN)내부조인(INNER JOIN) → JOIN USING / ON포괄조인(LEFT, RIGHT)외부조인(LEFT, RIGHT, FULL)자체조인비등가조인JOIN ON※ ANSI 구문은 미국표준협회에서 각각의 DBMS에서 공통적으로 사용할 수 있도록 만든 표준 SQL 구문이다.   ▶ 내부조인 - 연결시키는 컬럼의 값이 일치하는 값이 없는 행을 제외한 일치하는 행들만 조회해주는 조인  ○ 오라클 전용 구문  - FROM 절에 조회하고자하는 테이블들을 나열한다.  - WHERE 절에 매칭시킬 컬럼..

SQL 2024.08.13

[SQL] 함수(FUNCTION)

▶ 함수 - 전달된 컬럼값을 받아서 함수를 실행한 결과값을 반환해준다.  ● 종류  - 단일행 함수 : N개의 값을 읽어들여서 N개의 결과값을 반환하는 함수로 매행마다 함수실행 결과를 반환  - 그룹 함수 : N개의 값을 읽어들여서 1개의 결과값을 반환하는 함수로 그룹을 지어서 그룹별로 함수실행 결과를 반환 ※ SELECT 절에는 결과값으로 나온 행의 개수가 다르기 때문에 단일행 함수와 그룹함수를 함께 사용하지 못한다.※ 함수를 사용할 수 있는 위치 : SELECT, WHERE, ORDER BY, HAVING  ▶ 단일행 함수 ( [ ] 대괄호 안에 있는 것들은 생략가능 ) ⊙ 문자 처리 함수  ● LENGTH(컬럼 | '문자열')     : 해당 컬럼 또는 문자열의 글자 수를 반환   ● LENGTHB..

SQL 2024.08.12

[SQL] DQL (Data Query Language)

SQL에는 여러가지 명령어가 존재한다. 그 명령어들을 이용하여 쿼리를 작성하여 데이터베이스에서 데이터를 가져와 여러가지 제어를 할 수 있게 한다. 그 중 DQL에 해당하는 SELECT문에 대해 알아보도록 한다.   ▶ SQL 종류 -  SQL에는 여러가지 명령어가 존재한다. 그 명령어들을 이용하여 쿼리를 작성하여 데이터베이스에서 데이터를 가져와 여러가지 제어를 할 수 있게 한다.종류명령어DQL(Data Query Language) : 데이터 질의어SELECT : 데이터 검색DML(Data Manipulation Language) : 데이터 조작어INSERT : 데이터 추가UPDATE : 데이터 수정DELETE : 데이터 삭제DDL(Data Definiton Language) : 데이터 정의어CREATE ..

SQL 2024.08.12