DAY 37 [N312]

마친자·2021년 10월 14일
0

SQL

: 구조화된 쿼리 언어 -> 데이터베이스 용 프로그래밍 언어
예) MySQL, Oracle, SQLite, PostgreSQL

SQL Basics

SOL 기초

  • "type!=?" = "type<>?"
  • 특정 값과 비슷한 값들을 필터할 때: LIKE + '%문자열%'
  • 특정 값 일치하는 데이터를 필터할 때: WHERE 특성_2 IN ("특정값_1", "특정값_2");
  • 값이 없는 경우를 제외할 때:WHERE 특성_1 IS NOT NULL;
  • Join

    OUTER JOIN: LEFT OUTER JOI, RIGHT OUTER JOIN

    SELECT *
    FROM 테이블_1
    LEFT(RIGHT) OUTER JOIN 테이블_2 ON 테이블_1.특성_A = 테이블_2.특성_B

SQL 조인 시각

이미지 출처

연습용 사이트

관계형 데이터베이스

: 테이블을 사용하는 데이터베이스

스키마

: 데이터베이스에서 데이터가 구성되는 방식과 서로 다른 엔티티 간의 관계

  • 데이터 : 각 항목에 저장되는 값입니다.
  • 테이블 (= relation, entity) : 사전에 정의된 행과 열로 구성되어 있는 체계화된 데이터
  • 필드 (= column, attribute) : 테이블의 열을 가리킵니다.
  • 레코드 (=tuple, instance) : 테이블의 한 행의 저장된 정보
  • 키 : 테이블의 각 레코드를 구분할 수 있는 값
    각 레코드마다 고유값이어야 하며 기본키 (primary key) 와 외래키 (foreign key) 등이 있음

이미지 출처

관계의 종류

이미지 출처

1:1 관계

1:N 관계

  • 한 명의 유저가 여러 전화번호를 가질 수 있으나 여러명의 유저가 하나의 전화번호를 가질 수는 없음
  • 가장 많이 쓰이는 관계

N:N 관계


-고객 한 명은 여러 개의 여행 상품을 구매할 수 있고, 여행 상품 하나는 여러 명의 고객이 구매할 수 있음

  • customer_package 테이블은 customer_id와 package_id를 묶어주는 역할

자기참조

  • 유저당 한 명만 추천할 수 있지만 추천 받은 사람은 여러 명에서부터 추천을 받게 됨

출처

profile
마루에 미친자

0개의 댓글