SQL

Hye·2022년 10월 5일
0

SQL 사용에 필요한 기본 문법 (MySQL 기준)


✏️ DDL (Data Definition Language)

  • 데이터베이스/테이블 등을 생성, 삭제, 구조 변경하기 위한 명령어

🔎 CREATE

  • 데이터베이스 생성
    • CREATE DATABASE 데이터베이스_이름;
  • 데이터베이스 선택 (사용하려면 선택해야 함)
  • USE 데이터베이스_이름;
  • 테이블 생성
    • CREATE TABLE 테이블_이름{필드이름 필드타입};

🔎 ALTER

  • 데이터베이스 수정
    • ALTER DATABASE 데이터베이스_이름 CHARACTER SET=문자집합_이름
    • ALTER DATABASE 데이터베이스_이름 COLLATE=콜레이션_이름
  • 테이블 수정
    • 필드 추가
      • ATLER TABLE 테이블_이름 ADD 필드이름 필드타입
    • 필드 삭제
      • ATLER TABLE 테이블_이름 DROP 필드이름
    • 필드 타입 변경
      • ATLER TABLE 테이블_이름 MODIFY COLUMN 필드이름 필드타입

🔎 DROP

  • 데이터베이스 삭제
    • DROP DATABASE 데이터베이스_이름
  • 테이블 삭제
    • DROP TABLE 테이블_이름

🔎 TRUNCATE

  • 테이블의 데이터만 삭제 (테이블 자체는 그대로 남음)
    • TRUNCATE TABLE 테이블_이름

🔎 RENAME

✏️ DML (Data Manipulation Language)

  • 데이터베이스에 저장된 데이터 처리, 조회, 검색하기 위한 명령어

🔎 INSERT

  • 테이블에 레코드 추가
    • INSERT INTO 테이블이름(필드이름1, 필드이름2) VALUES (데이터값1, 데이터값2)
    • INSERT INTO 테이블이름 VALUES (데이터값1, 데이터값2)
      • NULL을 저장할 수 있도록 설정된 필드
      • DEFAULT 제약 조건 설정된 필드
      • AUTO_INCREMENT 키워드 설정된 필드
      • 위 경우 필드 이름 생략 가능

🔎 UPDATE

  • 레코드 내용 수정
    • UPDATE 테이블이름 SET 필드이름1=데이터값1 WHERE 필드이름=데이터값

🔎 DELETE

  • 레코드 내용 삭제
    • DELETE FROM 테이블이름 WHERE 필드이름=데이터값

🔎 SELECT

  • 테이블의 레코드 선택
    • SELECT 필드이름 FROM 테이블이름 WHERE 조건
    • * : 모든 필드
    • WHERE
      • = : 특정 값과 동일
      • <> : 특정 값 제외
      • LIKE : 특정 값과 비슷
        • % : 0개 이상의 어떤 문자열이 와도 OK
        • _ : 밑줄 개수만큼 문자 존재
        • [] : 대괄호 안의 지정된 문자 범위 또는 문자가 존재해야 함
        • [^] : 대괄호 안의 지정된 문자 범위 또는 문자 존재 X
      • IN : 리스트의 값들과 일치
      • IS NULL : 값이 없는 경우
      • IS NOT NULL : 값이 없는 경우 제외할 때
    • ORDER BY : 정렬
      • ORDER BY 특성 DESC : 내림차순
    • LIMIT
      • 결과로 출력할 데이터 개수 정함
      • 쿼리문에서 가장 마지막에 추가
    • DISTINCT
      • 중복 제거
    • AS
      • alias (별칭)

✏️ DCL (Data Control Language)

  • 데이터베이스에 저장된 데이터를 관리하기 위해 데이터의 보안성, 무결성 등을 제어하기 위한 명령어

🔎 GRANT

🔎 REVOKE

✏️ TCL (Transaction Control Language)

  • DLM을 거친 데이터의 변경사항을 수정할 수 있는 명령어

🔎 COMMIT

🔎 ROLLBACK

🔎 SAVEPOINT

✏️ SQL 내장함수

🔎 GROUP BY

  • 하나의 그룹을 하나의 레코드로 반환
  • SELECT에서만 사용 가능
    SELECT 필드이름, 그룹함수(필드이름)
    FROM 테이블이름
    [WHERE 조건]
    GROUP BY 필드이름;

🔎 HAVING

  • GROUP BY절에 의해 반환되는 결과 집합의 조건 설정
    SELECT 필드이름, 그룹함수(필드이름)
    FROM 테이블이름
    [WHERE 조건]
    GROUP BY 필드이름
    HAVING 조건;

🔎 COUNT()

  • 선택된 필드에서 특정 조건 만족하는 레코드의 총 개수 반환

🔎 SUM()

  • 선택된 숫자 타입의 필드에 저장된 값의 총 합 반환

🔎 AVG()

  • 선택된 숫자 타입의 필드에 저장된 값의 평균값 반환

🔎 MAX(), MIN()

  • 선택된 필드에 저장된 값 중 최대, 최소값 반환

📌 SELECT 실행 순서

  • FROM
  • WHERE
  • GROUP BY
  • HAVING
  • SELECT
  • ORDER BY
profile
공부중 📚

0개의 댓글

관련 채용 정보