시험 최대한 X
하나의 속성값이 복수형을 가지면 안됨
하나의 속성에는 값이 하나만 들어가야 한다
테이블의 테마와 관련 없는 컬럼은 다른 테이블로 분리
테이블에서 부분 함수적 종속성을 제거한 것
즉, 키가 아닌 속성이 기본키의 일부분에 종속되는 것
테이블의 테마가 맞지 않으면 아래처럼 분리
다른 속성에 의존하는 속성은 따로 분리
(중복 들어간 값 빼고 보기)
테이블이 여러 개다 보니 조회할 때 여러 개의 테이블을 가져와서 확인해야 한다
이를 해결하기 위해 테이블 연결하는 것이 필요
(= 두 개 이상 테이블에서 데이터를 가져와 결함하는 것)
articles의 userId와 users의 id가 같은 것만 원한다
SELECT FROM articles, users WHERE articles.userId = users.rowId;
SELECT FROM articles, users WHERE userId = users.rowId; (이렇게도 가능)
테이블 1 INNER JOIN 테이블 2 ON 조건식
SELECT * FROM articles INNER JOIN users ON userId=users.rowId;
가져올 때 값이 없을 때 빈 값을 가져오도록 하는 것
SELECT * FROM articles LEFT JOIN users
ON userId = users.rowid;
아티클은 다 가져오고 조건에 맞으면 땡겨와서 넣어주고 없으면 빈 값으로 처리
SELECT * FROM articles RIGHT JOIN users
ON userId = users.rowid;