안녕하세요 집사입니다.
오늘은 데이터베이스의 언어인 SQL의 기초를 배우는 시간을 가졌습니다.
SQL(Structured Query Language)은 관계형 데이터베이스에서 데이터를 조작하기 위한 표준 언어입니다.
SQL을 사용하여 데이터베이스의 데이터를 쿼리, 추가, 변경, 삭제합니다.
SQL은 대부분 다음과 같은 기본 구문으로 구성됩니다.
1. 기본문법의 종류
- 선택하다: 데이터를 쿼리하기 위한 구문입니다.
- OUT OF: 데이터를 조회할 테이블을 지정합니다.
- 어디: 특정 조건에 맞는 데이터를 조회하기 위한 구문입니다.
- 정렬 기준: 데이터 정렬 구문.
- 그룹화 기준: 데이터를 그룹화하기 위한 구문입니다.
- 연결하다: 둘 이상의 테이블을 조인하여 데이터를 쿼리하는 구문입니다.
선택하다
SELECT (컬럼명1, 컬럼명2, ...) FROM (테이블명)
OUT OF
SELECT (컬럼명1, 컬럼명2, ...) FROM (테이블명)
어디
SELECT (컬럼명1, 컬럼명2, ...) FROM (테이블명) WHERE (조건식)
정렬 기준
SELECT (컬럼명1, 컬럼명2, ...) FROM (테이블명) ORDER BY (컬럼명) (ASC|DESC)
그룹화 기준
SELECT (컬럼명1, 컬럼명2, ...) FROM (테이블명) GROUP BY (컬럼명)
연결하다
SELECT (컬럼명1, 컬럼명2, ...) FROM (테이블명1) JOIN (테이블명2) ON (조인 조건식)
위의 기본 구문을 학습하고 숙지한 후 SQL을 사용하여 다양한 방법으로 데이터베이스의 데이터를 조작할 수 있습니다.
2. 제어 명령
이제 데이터를 조작하는 몇 가지 명령에 대해 알아보겠습니다.
삽입
이 명령은 데이터베이스에 새 레코드를 추가합니다.
INSERT INTO 테이블명 (컬럼1, 컬럼2, ...) VALUES (값1, 값2, ...)
예
INSERT INTO students (name, age, gender) VALUES ('John', 20, 'M');
위의 예는 20세인 John이라는 남학생을 Students 테이블에 추가하는 명령입니다.
끄다
이 명령은 데이터베이스에서 레코드를 삭제합니다.
DELETE FROM 테이블명 WHERE 조건절
예
DELETE FROM students WHERE name="John";
위의 예는 Students 테이블에서 John이라는 학생을 삭제하는 명령입니다.
업데이트하려면
이 명령은 데이터베이스의 레코드를 변경합니다.
UPDATE 테이블명 SET 컬럼1 = 값1, 컬럼2 = 값2, ... WHERE 조건절
예
UPDATE students SET age = 21 WHERE name="John";
위의 예는 Students 테이블에서 John이라는 학생의 나이를 21세로 변경하는 명령입니다.
병합
이 명령은 두 개의 테이블을 결합하여 새 테이블을 만듭니다. 두 테이블을 조인하고 일치하는 레코드를 새 테이블에 삽입하고 일치하지 않는 레코드는 변경하지 않고 그대로 둡니다.
예
MERGE INTO employees e
USING temp_employees t
ON (e.employee_id = t.employee_id)
WHEN MATCHED THEN UPDATE SET e.salary = t.salary
WHEN NOT MATCHED THEN INSERT (employee_id, first_name, last_name, salary)
VALUES (t.employee_id, t.first_name, t.last_name, t.salary);
위의 예에서는 직원 테이블과 temp_employees라는 두 테이블을 결합하고 직원 테이블의 급여 열을 temp_employees 테이블의 급여 값으로 업데이트하고 일치하지 않는 레코드를 직원 테이블에 추가합니다.
명령.
오늘 우리는 이와 같은 SQL의 기본 구문을 배웠습니다. 일반적으로 사용되는 것을 기반으로 만들어졌습니다.
그 외에도 다른 명령이 있습니다. 예를 들어 GRANT 및 ALTER와 같은 권한 있는 명령이 있고 TRUNCATE와 같은 삭제 쿼리도 있습니다. 다만 추후에 나오면 추가로 설명드릴 예정이니 오늘 배운 내용을 바탕으로 충분히 학습하시길 바랍니다.
감사해요
