[ SQL ]
● SQL 이란?
》 Structured Query Language
》 1970년대 초 IBM이 관계형 데이터베이스 관리 시스템에 저장된 데이터를 다루기 위해 개발
》 관계 대수와 관계 해석을 기초로 한 고급 데이터 언어
》 데이터 정의, 데이터 조작, 데이터 제어 기능 제공하는 비절차적 언어
● SQL 의 종류
① DDL : 데이터 정의어
》 스키마, 도메인, 테이블, 뷰, 인덱스 등 데이터의 구조를 정의하거나 제거
DROP TABLE 테이블이름 [CASCADE or RESTRICTED]
- CASCADE : 개체를 변경/삭제할 때 다른 개체가 참조하고 있을 경우 함께 변경/삭제
- RESTRICTED : 개체를 변경/삭제할 때 다른 개체가 참조하고 있을 경우 변경/삭제가 취소
② DML : 데이터 조작어
》 실질적으로 데이터를 조회, 삽입, 삭제, 수정 시 사용
#조회
SELECT 속성명 FROM 테이블명 WHERE 조건
#삽입
INSERT INTO 테이블명 (속성명, 속성명..) VALUES (값, 값..)
#삭제
DELETE FROM 테이블명 WHERE 조건
#수정
UPDATE 테이블명 SET 속성_이름 = 값 WHERE 조건
③ DCL : 데이터 제어어
》 데이터베이스에 접근하고 사용할 수 있도록 권한을 주거나 회수
#권한 주기
GRANT [권한명] ON [DB].[TABLE] TO [계정명];
ex) GRANT ALL PRIVILEGES ON *.* TO 'test01'@'%' WITH GRANT OPTION
#권한 회수
REVOKE [권한명] ON [DB].[TABLE] FROM [계정명];
[ 내장 함수 ]
● 내장 함수란?
》 일정한 기능을 수행하는 내용을 미리 만들어둠
- 집계 함수 : SUM, COUNT, AVG
- 문자 처리 내장 함수 : RIGHT, SUBSTRING_INDEX, UPPER
- 날짜 및 시간 처리 내장 함수 : NOW, CURDATE, CURTIME
[ GROUP BY & HAVING ]
● GROUP BY 란?
》 특정 열 또는 특정 열을 연산한 결과를 집계하여 값에 따라 그룹을 짓는 연산자
● HAVING 이란?
》 GROUP BY 결과에 조건을 걸어 데이터를 조회하고 싶을 때 사용
'CLOUD > Server' 카테고리의 다른 글
[DB 이중화] Active(읽기,쓰기) - Active(읽기,쓰기) (0) | 2023.03.02 |
---|---|
[DB 이중화] Active(쓰기) - Active(읽기) (0) | 2023.03.02 |
[DB] 정규화 (0) | 2023.03.02 |
[DB] 사상 (Mapping) (0) | 2023.03.02 |
[DB] 관계 데이터 모델 (0) | 2023.03.02 |