20241008(화) DB - DML

Dodo Lee·2024년 10월 8일

[ DML(SELECT) : Data Manipulation Language ]



1. 주요 용어

1) 행(Row)
2) 컬럼(Column)
   ** 행 + 컬럼 = 표(Table)
3) 기본키(Primary Key) : 중복되지 않고 행을 구분하는 키
4) 외래키(Foreign Key) : 외부에 있는 기본키
5) Null(값이 없음) : 데이터가 없다
6) 컬럼값
  

2. SQL(Structured Query Language)

관계형 데이터베이스에서 데이터를 조회하거나 조작하기 위해 사용하는 표준 검색 언어
원하는 데이터를 찾는 방법이나 절차를 기술하는 것이 아닌 조건을 기술하여 작성

 분류 /     용도      / 명령어
DQL /  데이터 검색  / SELECT
DML / 데이터 조작  / INSERT, UPDATE, DELETE
DDL /  데이터 정의  / CREATE, DROP, ALTER
DCL /  데이터 제어  / GRANT, REVOKE
TCL / 트랜젝션 제어 / COMMIT, ROLLBACK
**트랜잭션 : SQL문들을 하나의 작업단위로 묶어놓은 집합

3. 주요 데이터 타입

1) NUMBER : 숫자
2) CHARACTER : 문자
   -CHAR : 고정길이(최대 2000바이트) / 주민번호
   -VARCHAR2 : 가변길이(최대 4000바이트) / 주소, 이름 등..
   -NVARCHAR2 : 문자열의 크기를 글자 수 단위로 받음
3) DATE : 날짜
4) LOB
   -CLOB : 가변길이 문자(최대 4기가 바이트) / 웹소설
   -BLOB : Binary Data / 파일업로드( 잘 사용X)
     --> 대신하여, 파일이 저장된 경로를 저장
  



== SELECT : 조회 ==

1. 의미

  • 데이터를 조회하면 조건에 맞는 행들이 조회 된다
    이 때 조회된 행들의 집합을 "RESULT SET"이라고 한다
  • RESULT SET은 0개 이상의 행을 포함할 수 있다
    (조건에 맞는 행이 없을 경우 0)

2. 작성법

SELECT 컬럼명 FROM 테이블명;

SELECT * FROM EMPLOYEE;

3. 문법

1) SELECT
2) FROM
3) WHERE
4) ORDER BY

4. 연산자

 1) 산술 연산자( + - * / )
 2) 연결 연산자( || )
 3) 비교 연산자( <, >, <=, >= )
 4) IS NULL/IS NOT NULL, LIKE, IN/NOT IN
 5) BETWEEN AND / NOT BETWEEN AND
 6) NOT (논리 연산자)
 7) AND (논리 연산자)
 8) OR (논리 연산자)
 



== 함수 ==

1. 종류

1) 단일 행 함수 : N개의 값을 읽어서 연산 후, N개의 결과를 반환
2) 그룹 함수 : N개의 값을 읽어서 연산 후 1개의 결과를 반환(합계, 평균, 최대, 최소)

2. 단일 행 함수

1) LENGTH : 길이 반환
2) INSTR : 지정 위치부터 지정한 순번째로 검색되는 문자의 위치 반환
3) SUBSTR : 지정한 위치부터 지정된 길이만큼 문자열을 잘라서 반환
4) TRIM : 앞(LEADING), 뒤(TRAILING), 양쪽(BOTH)에 있는 지정된 문자 제거
5) 숫자 관련 함수
   (1) ABS : 절대값
   (2) MOD : 나머지
   (3) ROUND : 반올림
   (4) FLOOR : 내림
   (5) CEIL : 올림
   (6) TRUNC : 특정 위치 아래 절삭(버림)
6) 날짜 관련 함수
   (1) SYSDATE : 현재 시간 반환
   (2) SYSTIMESTAMP : SYSDATE + MS
   (3) MONTHS_BETWEEN(X, Y) : X와 Y의 개월 수 차이
   (4) ADD_MONTHS(X,Y) : X에 Y만큼의 개월 수를 더함
   (5) LAST_DAY(X) : X달의 마지막 날짜 구함
   (6) EXTRACT(YEAR||MONTH||DAY FROM 날짜) : 날짜로 부터 년||월||일 반환
7) 형변환
   (1) TO_CHAR : 문자열로 형변환
   (2) TO_DATE : 날짜로 형변환
   (3) TO_NUMBER : 숫자로 형변환
   
profile
연습생

0개의 댓글