3/8 TIL

큰모래·2023년 3월 8일
0
post-thumbnail
post-custom-banner

SQL (MySQL) 문법


문제1

  • 데이터베이스 리스팅
    • SHOW DATABASES
  • 데이터베이스 선택
    • USE [데이터베이스명]
  • 테이블 리스팅
    • SHOW TABLES
  • 특정 데이터베이스가 존재한다면 삭제
    • DROP DATABASE IF EXISTS [데이터베이스명]
  • 데이터베이스 생성
    • CREATE DATABASE
  • 테이블 생성
    CREATE TABLE 테이블명 (
    	칼럼명 타입,
    	칼럼명 타입
    }
  • 테이블에 데이터 삽입
    INSERT INTO 테이블명
    SET 칼럼명 =,
    		칼럼명 =
  • 테이블에 있는 데이터 조회
    //전체 조회
    SELECT *
    FROM 테이블명;
    
    //특정 데이터 조회
    SELECT 칼럼명,칼럼명
    FROM 테이블명
  • 테이블 칼럼 추가
    • ALTER TABLE 테이블명 ADD COLUMN 칼럼명 타입
  • 기존 데이터에 값 추가
    UPDATE 테이블명
    SET 칼럼명 =WHERE 조건
  • 조회할 행 개수 제한
    • LIMIT 1 : 상위 1행만 조회
  • 특정 데이터 삭제
    DELETE
    FROM 테이블명
    WHERE 조건
  • 테이블 구조 확인
    • DESC 테이블명
  • DATETIME 타입의 칼럼에 현재 시간으로 데이터 넣기
    • 칼럼명 = NOW()

문제 2

  • 조건
    • INT - 인트 타입

    • UNSIGNED - 음수 불가

    • PRIMARY KEY - PK 설정

    • NOT NULL - NULL 값이면 안됨

    • AUTO_INCREMENT - 데이터가 생성 시 해당 칼럼은 1씩 자동으로 추가됨

      CREATE TABLE 테이블명 (
      	id INT UNSIGNED PRIMARY KEY NOT NULL AUTO_INCREMENT
      )
  • 칼럼 수정
    • ALTER TABLE 테이블명 MODIFY COLUMN 칼럼명 조건
  • 칼럼 변경
    • ALTER TABLE 테이블명 CHANGE COLUMN 이전칼럼명 바꿀칼럼명 조건
  • 가나다가 포함된 데이터 조회
    SELECT *
    FROM 테이블명
    WHERE 칼럼명 LIKE '%가나다%'
  • 몇 이상 몇 이하
    • WHERE 칼럼명 ≥ 범위 AND 칼럼명 ≤ 범위

문제 3

  • INNER JOIN - 두 테이블을 교집합으로 합친다 생각하면 편함
    • 하나의 쿼리문에서 두 테이블에 대한 값을 조회할 수 있다.

      SELECT 1.칼럼1, 1.칼럼2, 2.칼럼1, 2.칼럼2
      FROM 테이블1 AS 1 INNER JOIN 테이블2 AS 2 ON 공통되는 칼럼
profile
큰모래
post-custom-banner

0개의 댓글