Part 1. 데이터베이스의 개요
1.1 데이터베이스란
데이터베이스: 구조화된 데이터의 집합.
다양한 정보를 디지털화해 저장 및 관리함으로써,
사용자가 빠르고 효율적으로 데이터를 활용할 수 있도록 한다.
DBMS: 데이터베이스를 관리하기 위한 프로그램
DBMS의 기능
- 효율적 데이터 관리
- 데이터 무결성 유지
- 동시성 제어
- 보안
- 백업 및 복구
- 쉬운 데이터 접근성
- 데이터 추상화
MYSQL의 장점
- 무료 오픈 소스
- 광범위한 사용
- 풍부한 문서 및 커뮤니티
- 표준 SQL 지원
SQL: 데이터베이스를 활용하기 위한 표준화된 질의 언어
1.2 데이터 저장 형식
데이터베이스 파일
- 데이터 파일
- 로그 파일
- 인덱스 파일
- 설정 파일
- 메타데이터 파일
테이블: 일련의 데이터를 열과 행으로 저장하는 틀.
각 열은 해당 데이터의 속성, 각 행은 속성이 모여 만든 하나의 데이터 항목
1.3 MYSQL 실습 환경 설정하기
서버: 특정 서비스를 제공하는 프로그램(또는 컴퓨터)
클라이언트: 서버가 제공하는 기능을 요청해 결과를 응답받는 프로그램(또는 컴퓨터)
Part 2. SQL 기본
2.1 데이터 CRUD란
데이터 CRUD: 데이터베이스의 데이터를 관리하기 위한 기본 동작
데이터를 생성(Create), 조회(Read), 수정(Update), 삭제(Delete)
2.2 데이터베이스 만들기
쿼리: 데이터베이스에 사용자가 원하는 특정 데이터를 보여 달라고 요청하는 것
SHOW DATABASES;
:MYSQL 서버에 저장된 데이터베이스 목록을 조회하는 쿼리
CREATE DATABASE 데이터베이스명;
USE 데이터베이스명;
: 새 데이터베이스를 만들기 위한 쿼리 형식
: 데이터베이스에 진입하는 쿼리
DROP DATABASE 데이터베이스명;
: 데이터베이스를 삭제하는 쿼리
주석: 쿼리에 대한 설명을 메모로 작성한 것, 쿼리 실행에 아무런 영향 X
한 줄 주석: --
블록 주석: /* */
2.3 데이터 삽입 및 조회하기
CREATE TABLE 테이블명 (
칼럼명1 자료형1,
칼럼명2 자료형2,
...
PRIMARY KEY (칼럼명)
);
: 테이블을 만들 때 사용하는 CREATE TABLE 문
DESC 테이블명;
테이블의 구조를 조회할 때는 DESC 문 사용
INSERT INTO 테이블명 (칼럼명1, 칼럼명2, ...)
VALUES (입력값1, 입력값2, ...);
SELECT 칼럼명1, 칼럼명2, ...
FROM 테이블명
WHERE 조건;
테이블에 데이터를 삽입할 때는 INSERT INTO 문을 사용
테이블을 조회할 때는 SELECT 문을 사용
2.4 데이터 수정 및 삭제하기
UPDATE 테이블명
SET 칼럼명 = 입력값
WHERE 조건;
데이터를 수정할 때는 UPDATE 문 사용
UPDATE 문은 반드시 키를 조건으로 대상을 찾아야 한다.
키(key): 테이블의 모든 튜플을 식별하거나 다른 테이블과 관계를 맺기 위해 특정 칼럼에 지정해 사용하는 개념
ex) 기본키, 외래키 등
-- 안전모드 해제
SET SQL_SAFE_UPDATES = 0;
-- 안전모드 재설정
SET SQL_SAFE_UPDATES = 1;
대량의 데이터를 수정하는 것을 방지하기 위해 안전모드가 설정돼 있다.
해제하는 방법과 다시 설정하는 방법은 위와 같다.
DELETE FROM 테이블명
WHERE 조건;
테이블에서 데이터를 삭제할 때는 DELETE 문 사용,
WHERE 절을 생략하면 모든 튜플이 삭제되고 테이블 자체의 구조만 남는다.
DROP TABLE 테이블명;
테이블의 데이터뿐만 아니라 테이블 자체가 필요 없게 되면 테이블을 통째로 지우는 DROP TABLE 문 사용
DROP 명령은 한 번 수행되면 삭제하기 전으로 되돌릴 수 없다.
3.1 데이터 필터링이란
데이터 필터링: 원하는 데이터만 걸러내는 작업, 주로 WHERE 절을 통해 수행
비교연산자: 두 값을 비교하는 연산자 ex) =, !=, >, >=, <, <=
논리연산자: 두 조건을 조합해 새로운 조건을 만드는 연산자 ex) AND, OR NOT
산술연산자: 사칙 연산을 위한 연산자, ex) =, -, *, /, %
연산자 우선순위: 어떤 연산자를 먼저 수행할지 그 우선순위를 정한 것
3.2 데이터 필터링 실습: 대학 DB
SELECT 칼럼명 AS 별칭
FROM 테이블명;
AS 키워드: 칼럼이나 테이블에 별칭을 지정하는 키워드,
칼럼이나 테이블 이름이 길거나 의미를 분명하게 해야할 경우 사용
해당 쿼리 출력 결과에만 임시로 나타나며, 쿼리의 가독성을 높이고 쿼리를 더 간결하게 해준다.
'데이터 분석 > SQL' 카테고리의 다른 글
[SQL 데이터베이스 입문] 3주차 (0) | 2025.03.05 |
---|---|
[SQL 데이터베이스 입문] 2주차 (0) | 2025.02.27 |