코딩 스쿨 MySQL

언어선택 : HTMLCSSJAVAJAVASCRIPTMYSQLSQL PHP

MySQL Examples

MySQL Examples: 기본적인 MySQL 예제


MySQL은 데이터베이스를 관리하는 데 사용되는 관계형 데이터베이스 관리 시스템(RDBMS)입니다. 이 가이드는 기본적인 MySQL 예제를 통해 데이터베이스, 테이블 생성 및 데이터 조작을 설명합니다.


1. 데이터베이스 생성

MySQL에서 새로운 데이터베이스를 생성하는 예제입니다.

CREATE DATABASE my_database;

  • 설명:
    • CREATE DATABASE: 새로운 데이터베이스를 생성하는 명령어입니다.
    • my_database: 생성하려는 데이터베이스 이름.

2. 데이터베이스 선택

데이터베이스를 생성한 후, 그 데이터베이스를 사용하기 위해 선택합니다.

USE my_database;

  • 설명:
    • USE: 특정 데이터베이스를 선택하는 명령어입니다.
    • my_database: 사용하고자 하는 데이터베이스 이름.

3. 테이블 생성

새로운 테이블을 생성하여 데이터를 저장할 수 있습니다.

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100),
    email VARCHAR(100),
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

  • 설명:
    • CREATE TABLE: 새로운 테이블을 생성하는 명령어입니다.
    • id: 자동 증가되는 사용자 ID (기본 키).
    • name: 최대 100자의 문자열을 저장할 수 있는 필드.
    • email: 이메일 주소를 저장하는 필드.
    • created_at: 사용자가 생성된 시간을 자동으로 기록하는 필드.

4. 데이터 삽입

테이블에 데이터를 삽입하는 예제입니다.

INSERT INTO users (name, email) VALUES ('Alice', 'alice@example.com');

  • 설명:
    • INSERT INTO: 테이블에 데이터를 삽입하는 명령어입니다.
    • users: 데이터가 삽입될 테이블 이름.
    • (name, email): 삽입할 필드들.
    • VALUES: 삽입할 데이터 값.

5. 여러 데이터 삽입

한 번에 여러 데이터를 삽입할 수 있습니다.

INSERT INTO users (name, email)
VALUES
('Bob', 'bob@example.com'),
('Charlie', 'charlie@example.com');

  • 설명:
    • 여러 행의 데이터를 한 번에 삽입하기 위해 여러 개의 VALUES 그룹을 사용합니다.

6. 데이터 조회

테이블에서 데이터를 조회하는 기본적인 쿼리입니다.

SELECT * FROM users;

  • 설명:
    • SELECT *: 모든 필드를 선택.
    • FROM users: users 테이블에서 데이터를 조회합니다.

특정 컬럼만 조회:

SELECT name, email FROM users;

  • 설명:
    • 특정 컬럼(name, email)만 조회할 수 있습니다.

7. 조건을 사용한 데이터 조회 (WHERE)

특정 조건에 맞는 데이터를 조회할 수 있습니다.

SELECT * FROM users WHERE email = 'alice@example.com';

  • 설명:
    • WHERE: 조건을 설정하여 특정 데이터를 조회합니다.
    • email = 'alice@example.com': 이메일 주소가 'alice@example.com'인 사용자를 조회합니다.

8. 데이터 업데이트

기존 데이터를 수정할 수 있습니다.

UPDATE users SET email = 'newalice@example.com' WHERE name = 'Alice';

  • 설명:
    • UPDATE: 테이블에서 데이터를 수정하는 명령어.
    • SET: 수정할 컬럼과 값을 설정.
    • WHERE: 조건을 설정하여 특정 행만 수정.

9. 데이터 삭제

테이블에서 특정 데이터를 삭제할 수 있습니다.

DELETE FROM users WHERE name = 'Charlie';

  • 설명:
    • DELETE FROM: 테이블에서 데이터를 삭제하는 명령어.
    • WHERE: 조건에 맞는 데이터를 삭제.

10. 테이블 삭제

테이블을 삭제하는 명령어입니다.

DROP TABLE users;

  • 설명:
    • DROP TABLE: 특정 테이블을 완전히 삭제하는 명령어입니다.

11. 테이블 구조 확인

테이블의 구조(스키마)를 확인할 수 있습니다.

DESCRIBE users;

  • 설명:
    • DESCRIBE: 테이블의 필드, 데이터 타입, 기본값 등을 확인하는 명령어입니다.

12. 데이터 정렬 (ORDER BY)

조회된 데이터를 정렬하여 출력할 수 있습니다.

SELECT * FROM users ORDER BY name ASC;

  • 설명:
    • ORDER BY: 데이터를 정렬하는 명령어.
    • ASC: 오름차순 정렬(기본값).
    • DESC: 내림차순 정렬.

13. 제한된 데이터 조회 (LIMIT)

조회할 데이터의 개수를 제한할 수 있습니다.

SELECT * FROM users LIMIT 3;

  • 설명:
    • LIMIT: 조회할 데이터의 최대 개수를 제한합니다.

14. 기본 키 제약 조건

테이블 생성 시 특정 필드를 기본 키로 설정할 수 있습니다.

CREATE TABLE products (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100),
    price DECIMAL(10, 2)
);

  • 설명:
    • PRIMARY KEY: 테이블에서 고유한 값을 갖는 필드를 정의합니다.
    • AUTO_INCREMENT: 새 레코드가 추가될 때 자동으로 1씩 증가하는 값을 생성합니다.

15. JOIN을 사용한 테이블 결합

두 개 이상의 테이블을 결합하여 데이터를 조회할 수 있습니다. 다음은 INNER JOIN의 예시입니다.

SELECT orders.id, customers.name, orders.order_date
FROM orders
INNER JOIN customers ON orders.customer_id = customers.id;

  • 설명:
    • INNER JOIN: 두 테이블에서 일치하는 데이터를 결합하여 조회합니다.
    • orders.customer_id = customers.id: orders 테이블의 customer_idcustomers 테이블의 id를 기준으로 결합.

16. 그룹화 (GROUP BY)와 집계 함수 (COUNT, SUM)

데이터를 그룹화하여 특정 필드의 값을 집계할 수 있습니다.

SELECT COUNT(*), name FROM users GROUP BY name;

  • 설명:
    • COUNT(*): 그룹별로 행의 개수를 셉니다.
    • GROUP BY: 같은 값을 가진 행을 그룹화하여 처리합니다.

합계 구하기:

SELECT SUM(price) FROM products;

  • 설명:
    • SUM(): price 필드의 합계를 계산합니다.

17. 데이터베이스 삭제

데이터베이스를 삭제하는 명령어입니다.

DROP DATABASE my_database;

  • 설명:
    • DROP DATABASE: 데이터베이스를 삭제하는 명령어입니다.

요약

이 가이드는 MySQL의 기본적인 사용 방법을 예제로 설명합니다. 데이터베이스와 테이블을 생성하고, 데이터를 삽입, 조회, 수정, 삭제하는 과정에서 사용되는 주요 SQL 문법을 포함하고 있습니다. 이 예제들을 통해 MySQL의 기초를 익히고, 데이터베이스 관리에 대한 이해를 높일 수 있습니다.


copyright ⓒ 스타트코딩 all rights reserved.
이메일 : startcodingim@gamil.com