SQL 자주 쓰이는 문법

·2025년 8월 25일

데이터베이스

목록 보기
3/3
post-thumbnail

자주 쓰이는 문법

구분명령어예시
DB/테이블 생성CREATE DATABASE/TABLEsql\nCREATE DATABASE mydb;\nCREATE TABLE member (mno INT AUTO_INCREMENT PRIMARY KEY, mid VARCHAR(30));\n
컬럼 수정ALTER TABLEsql\nALTER TABLE member ADD mphone VARCHAR(20);\n
삭제DROPsql\nDROP TABLE member;\n
데이터 삽입INSERTsql\nINSERT INTO member(mid, mpw) VALUES ('hong','1234');\n
데이터 조회SELECTsql\nSELECT * FROM member WHERE mno=1;\n
데이터 수정UPDATEsql\nUPDATE member SET mpw='5678' WHERE mno=1;\n
데이터 삭제DELETEsql\nDELETE FROM member WHERE mno=1;\n
정렬ORDER BYsql\nSELECT * FROM member ORDER BY mno DESC;\n
중복 제거DISTINCTsql\nSELECT DISTINCT city FROM member;\n
집계COUNT, SUM, AVGsql\nSELECT COUNT(*), AVG(price) FROM product;\n
그룹화GROUP BY/HAVINGsql\nSELECT city, COUNT(*) FROM member GROUP BY city HAVING COUNT(*)>10;\n
페이징LIMITsql\nSELECT * FROM post ORDER BY pno DESC LIMIT 0,10;\n
조인INNER JOINsql\nSELECT m.mid, p.ptitle FROM member m JOIN post p ON m.mno=p.mno;\n
조인LEFT JOINsql\nSELECT m.mid, p.ptitle FROM member m LEFT JOIN post p ON m.mno=p.mno;\n
제약조건PRIMARY/FOREIGN KEYsql\nFOREIGN KEY (mno) REFERENCES member(mno) ON DELETE CASCADE;\n
IN/LIKEIN, LIKEsql\nSELECT * FROM product WHERE category IN('food','drink');\nSELECT * FROM member WHERE mid LIKE '%kim%';\n
서브쿼리Subquerysql\nSELECT * FROM product WHERE price > (SELECT AVG(price) FROM product);\n

DDL

  • CREATE : 데이터베이스/테이블 생성
  • ALTER : 테이블 구조 변경
  • DROP : 삭제

DML

  • INSERT : 데이터 삽입
  • SELECT : 데이터 조회
  • UPDATE : 데이터 수정
  • DELETE : 데이터 삭제

SELECT 확장

  • 조건 : WHERE / BETWEEN / IN / LIKE
  • 정렬 : ORDER BY
  • 집계 : COUNT, SUM, AVG, MAX, MIN
  • 그룹화 : GROUP BY + HAVING
  • 페이징 : LIMIT

JOIN

  • INNER JOIN : 교집합
  • LEFT JOIN : 왼쪽 기준, 오른쪽 없으면 NULL
  • 여러 테이블 JOIN : member, post, category 함께 조회 가능

제약조건

  • PRIMARY KEY : 기본
  • FOREIGN KEY : 참조 무결성
  • UNIQUE : 중복 불가
  • NOT NULL : 빈 값 불가
  • DEFAULT : 기본값 지정

기타

  • 별칭 : AS
  • 서브쿼리 : SELECT 안에 SELECT

0개의 댓글