기록과 정리의 공간

[MySQL] (20200803) TIL 본문

DATABASE/MySQL

[MySQL] (20200803) TIL

딸기맛도나쓰 2020. 8. 3. 21:37

TIL - 인프런 강의를 듣고 공부한 내용을 정리(강의 링크)

  • 공부한 내용
    1. DML(Data Manipulation Language)?
    2. 데이터 생성하기 - INSERT
    3. 데이터 읽기(검색) - SELECT

0. DML(Data Manipulation Language)?

  • 데이터 조작어(SELECT, INSERT, UPDATE, DELETE)
  • 데이터를 조작하기 위해 사용한다.
    • 데이터 생성(Create), 읽기(검색)(Read), 수정(갱신)(Update), 삭제(Delete) - CRUD를 한다는 의미

1. 데이터 생성하기 - INSERT

  • 테이블 컬럼에 맞추어 데이터를 넣는 작업

  • 기본 문법

    • 방법1 : 테이블 전체 컬럼에 대응하는 값을 모두 넣기

       INSERT INTO 테이블명 VALUES(값1, 값2, ...);
    • 방법2 : 테이블 특정 컬럼에 대응하는 값만 넣기 (지정되지 않은 컬럼은 디폴트값 또는 NULL값이 들어감) => (col1, col2, ...)의 순서는 상관 없다! 해당 컬럼에 대응하는 값들만 맞게 넣어주면 됨.

       INSERT INTO 테이블명 (col1, col2, ...) VALUES(값1, 값2, ...);
  • 예시

    • 실습 테이블

    • 데이터 넣기 - 방법1

      INSERT INTO mytable VALUES(1, 'i5', '9600K', 'Coffee Lake');
    • 데이터 넣기 - 방법2

      INSERT INTO mytable(name, model_num, model_type) VALUES('i5', '9600F', 'Coffee Lake');

2. 데이터 읽기(검색) - SELECT

  • 테이블에 저장된 데이터를 읽는 작업

  • 데이터베이스는 대용량 데이터를 가정하므로, 대용량 데이터 중 특정한 조건에 맞는 데이터를 추출하는 작업이라고 하는 편이 보다 적합

  • 기본 문법

    • 실습 테이블 : 테이블명 - mytable
    1. 테이블의 전체 컬럼의 데이터 모두 읽기

      SELECT * FROM 테이블명;
    2. 테이블의 특정 컬럼의 데이터만 읽기

      SELECT col1, col2, ... FROM 테이블명;

      * 예시 > name, model_type 컬럼의 데이터만 읽기

      SELECT name, model_type FROM mytable;
    3. 테이블의 특정 컬럼의 데이터를 검색하되, 컬럼명을 변경하여 표시하기

      SELECT col1 AS 원하는컬럼명, col2 AS 원하는컬럼명, .... FROM 테이블명;

      * 예시 > name컬렴의 데이터를 cpu_name컬럼명으로 하여 가져오기

      SELECT name AS cpu_name FROM mytable;

    4. 데이터 정렬하여 읽기 - 테이블명 뒤에 ORDER BY사용 (정렬 기준 여러 개 지정 가능)

      SELECT ~ FROM 테이블명 ORDER BY 정렬기준이 될 컬럼명1 DESC|ASC, 컬럼명2 DESC|ASC, ...; 
      # DESC - 내림차순 , ASC - 오름차순

      * 예시 > name컬럼의 데이터를 내림차순 정렬하여 cpu_name이라는 컬럼명으로 가져오기

      SELECT name AS cpu_name FROM mytable2 ORDER BY cpu_name DESC;

      * 예시 > 여러 기준으로 정렬하기 예시 (링크)

      * 참고 > 3번과 같이 AS 사용 시, 정렬기준이 될 컬럼명은 원래 컬럼명/원하는컬럼명 둘 다 사용가능

    5. 조건에 맞는 데이터만 검색하기 - 테이블명 뒤에 WHERE 조건문사용 (비교)

      SELECT ~ FROM 테이블명 WHERE 컬럼명 < 값 | 컬렴명 > 값 | 컬럼명 = 값;

      * 예시 > id컬럼의 값이 4보다 작은 데이터들의 모든 컬럼값을 가져옴

      SELECT * FROM mytable2 WHERE id < 4;

      * 참고 > 3번과 같이 AS 사용 시, 조건에 들어갈 컬럼명은 원래 컬럼명만 사용가능

  1. 조건에 맞는 데이터만 검색하기 - 테이블명 뒤에 WHERE 조건문논리 연산자(OR, AND)를 활용

    SELECT ~ FROM 테이블명 WHERE조건문 OR|AND WHERE 조건문

    * 예시 > id컬럼의 값이 5보다 크고, model_type이 'Arabia Coffee'인 데이터들의 모든 컬럼값을 가져옴

    SELECT * FROM mytable2 WHERE id > 5 AND model_type = 'Arabia Coffee';

'DATABASE > MySQL' 카테고리의 다른 글

[MySQL] (20200807) TIL - 1  (0) 2020.08.07
[MySQL] Workbench - Error Code : 1175 해결하기  (0) 2020.08.04
[MySQL] (20200804) TIL  (0) 2020.08.04
[MySQL] (20200729) TIL  (0) 2020.07.29
[MySQL] (20200718) TIL  (0) 2020.07.18
Comments