SQL 문법

베오·2023년 2월 28일
0

/주석/

실행 : Ctrl + Enter
문법종료: ;

SHOW

  • 데이터베이스 목록이나, 테이블 목록, 서버의 설정 사항, 상태 등 다양한 정보를 보기 원할 때 사용하는 명령어
  • show 데이터베이스
  • show 테이블

SELECT

  • 데이터 수집을 위해 쿼리를 조정
  • 특정 행을 검색하거나 특정 방법으로 데이터를 검색할 수 있다.
    select * from 테이블
    select 특정칼럼명 from 테이블Select 문법 순서
  1. Select
  2. from
  3. where
  4. group by
  5. having
  6. order by쿼리의 실행 순서
  7. from
  8. where
  9. group by
  10. having
  11. select
  12. order by

WHERE

  • 칼럼 조회의 조건
    select * from 테이블
    where done = 1;
  • and, or 조건
    select * from 테이블
    where course_title = '웹개발 종합반'
    and(or) course_title = '앱개발 종합반';
  • like 조건
  • %로 표현
    select * from users
    where email like '%@naver.com';

LIMIT

  • 조회 결과 행의 수 제한
    select * from orders limit 5;

GROUP BY

  • 특정 칼럼 기준의 데이터 그룹핑
    select name from users group by name;

ORDER BY

  • 특정 칼럼 기준으로 정렬
  • ASC : 오름차순 1 2 3 4 5
  • DESC: 내림차순 5 5 4 2 1
    select * from users order by created_at desc;

DISTINCT

  • 중복 행을 제거
    select distinct name from users;

ALIAS

  • 칼럼에 별칭을 주고 조회
    select email (as) '이메일' from users where email like '%@naver.com';

연산자

  • 논리 연산자 : AND, OR, NOT
  • 비교 연산자 : BETWEEN AND, IN, IS NULL, LIKE

BETWEEN AND

  • select * FROM users
    where created_at BETWEEN '2020-07-13' and '2020-07-14' ;

계산 함수
MAX, MIN, COUNT, AVG, SUM, MOD, POWER
select 계산함수(칼럼) from 테이블;
select mod(칼럼1,칼럼2) from 테이블;
select power(칼럼1,칼럼2) from 테이블

JOIN
INNER JOIN, OUTER JOIN, CROSS JOIN, SELF JOIN

  • 조인은 두 개의 테이블을 서로 묶어서 하나의 결과를 만들어 내는 것

INNER JOIN(내부 조인)

  • 두 테이블을 조인할 때, 두 테이블에 모두 지정한 열의 데이터가 있어야 한다.
    select <열 목록>
    FROM <첫 번째 테이블>
    INNER JOIN <두 번째 테이블>
    ON <조인될 조건>
    [WHERE 검색 조건]
  • INNER JOIN을 JOIN이라고만 써도 인식

OUTER JOIN(외부 조인)

  • 두 테이블을 조인할 때, 1개의 테이블에만 데이터가 있어도 결과가 나온다.
    SELECT <열 목록>
    FROM <첫 번째 테이블(LEFT 테이블)>
    <LEFT | RIGHT | FULL> OUTER JOIN <두 번째 테이블(RIGHT 테이블)>
    ON <조인될 조건>
    [WHERE 검색 조건]
  • LEFT OUTER JOIN: 왼쪽 테이블의 모든 값이 출력되는 조인
  • RIGHT OUTER JOIN: 오른쪽 테이블의 모든 값이 출력되는 조인
  • FULL OUTER JOIN: 왼쪽 또는 오늘쪽 테이블의 모든 값이 출력되는 조인

CROSS JOIN(상호 조인)

  • 한쪽 테이블의 모든 행과 다른 쪽 테이블의 모든 행을 조인하는 기능이다.
  • 상호 조인 결과의 전체 행 개수는 두 테이블의 각 행의 개수를 곱한 수만큼의 개수이다.
  • 카티션 곱(CARTESIAN PRODUCT)라고도 한다.
    SELECT *
    FROM <첫 번째 테이블>
    CROSS JOIN <두 번째 테이블>

SELF JOIN(자체 조인)

  • 자신이 자신과 조인한다는 의미로, 1개의 테이블을 사용한다.
    SELECT <열 목록>
    FROM <테이블> 별칭A
    INNER JOIN <테이블> 별칭B
    ON <조인될 조건>
    [WHERE 검색 조건]

UNION
서브쿼리
WITH

링크텍스트

profile
꿈을 현실로

0개의 댓글

Powered by GraphCDN, the GraphQL CDN