Reference
🙇🏻♂️ 스스로 다시 보려고 기록하는 내용입니다
-한국방송통신대학교
데이터 삽입, 수정, 삭제
INSERT
- 테이블에 새로운 레코드를 삽입하는 명령문
- 테이블에 새로운 레코드 삽입
- 모든 속성 또는 부분 속성에 대한 속성값 삽입
INSERT INTO 테이블명 VALUES(값1, 값..)
INSERT INTO 테이블명(컬럼1, 컬럼2..) VALUES(값1, 값..)
- 각 컬럼에 대응하는 값을 삽입 (컬럽1 = 값1)
UPDATE
UPDATE 테이블명 SET 컬럼1=값1(컬럼2=값2..) WHERE 조건
UPDATE 테이블명 SET 컬럼1=수식1(컬럼2=수식2..) WHERE 조건
DELETE
- 조건에 일치하는 레코드 집합을 테이블에서 삭제
DELETE FROM 테이블명 (WHERE 조건)
- 조건 없으면 테이블 전체 삭제
- 삭제 안될 때 삭제하려는 것의 기본키를 참조하는 테이블이 있는지 확인해야 한다.
- 참조 무결성 제약조건
SAFE UPDATES 모드
- WHERE 절이 없는 UPDATE/DELETE 문은 테이블의 전체 레코드를 변경 / 삭제
- 의도하지 않은 데이터 변경 / 삭제 방지 위해 MySQL은 SAFE UPDATES 모드를 지원
- 기본키가 아닌 컬럼을 대상으로 수정/삭제 조건을 명시할 경우 실행 여부를 결정
SET SQL_SATE_UPDATES = 0 / 1
0 = false / 1 = true
데이터 검색 (1)
SELECT문 구문형식
- 한개 이상의 테이블에서 주어진 조건에 만족하는 레코드를 출력하는 명령문
- 관계 대수의 셀렉션, 프로젝션, 조인, 카티션 프로덕트 연산자의 기능을 모두 포함하는 명령문
- 필수절인 SELECT 절과 부과적인 목적으로 사용할 수 있는 여러 절을 혼합하여 검색 기능을 구체화
SELECT문 각 절의 기능
- SELECT절: 결과에 포함되는 컬럼을 지정
- FROM절: 질의를 적용할 테이블을 지정
- ON/WHERE: 조인 조건/검색할 레코드 조건을 지정
- GROUP BY: 레코드를 그룹화하기 위한 그룹 조건을 지정
- HAVING절: GROUP BY 절이 적용된 결과에 대한 조건을 지정
- ORDER BY절: 검색 결과의 정렬 기준을 지정
단순질의문
- 레코드를 제한하지 않고 전체 테이블을 검색하는 SELECT문으로 WHERE절이 없음
SELECT 컬럼1, 컬럼2.. 컬럼n FROM 테이블
SELECT * FROM 테이블 -> 전체
SELECT DISTINCT 컬럼 FROM 테이블 -> 중복제거
조건질의문
- 산술연산식 함수 등을 사용하여 표현한 조건을 WHERE 절에 깃루하여 조건을 만족하는 레코드만 검색하는 SELECT 문
- WHERE절은 UPDATE, DELETE 문에서도 동일하게 적용
산술연산자

비교연산자

논리연산자

데이터 정렬
- ORDER BY 절을 사용
- 검색 결과를 특정 컬럼에 대해 오름차순 또는 내림차순으로 정렬
SELECT문 형식.. ORDER BY 컬럼1 ASC/DESC.. 컬럼n
ASC/DESC
특수연산자

IN


- 특수연산자 사용할 경우

LIKE


- 아무것도 조회되지 않음 (완전 일치되어야만 하기 때문에)
- 특수연산자 사용할 경우

함수의 개념
- 특정 목적을 수행하도록 사전에 정의된 연산 및 기능을 수행한 후 결과값을 반환하는 명령어 집합
- 사용 DBMS는 검색결과가 사용자에게 여러 형태로 사용되도록 여러 데이터 타입에 대한 다양한 함수를 제공 (MySQL 기준)
숫자함수

문자함수

날짜함수

함수의 사용

