24.05.01 53일차
Join
열병합
정규화
정규화의 최종 목적은 비정규화
- 중복데이터 X
- null X
- 하나의 컬럼에는 하나의 의미만 저장 (하나의 컬럼에 '서울 남자' 불가능 / 지역, 성별로 나누기)
비정규화
분리되어있는 테이블을 필요에 따라 다시 합치는 것(효율성)
Join의 종류
- cross join
- equi join : 동일
- non-equi join : 동일하지 않음
- inner join(self join)
- outer join
- left outer join : join 여부와 상관 없이 왼쪽에 있는 모든 데이터
- right outer join : join 여부와 상관 없이 오른쪽에 있는 모든 데이터
- full outer join
5) contactLastName(Brown)이고 contactFirstName(Ahn)의 지불정보(payments)를 조회
customers와 payments의 공통분모는 customerNumber > join 부분
Outer join
join은 키 값이 같거나 다른 값을 연결하여 조회하기 때문에 비교되는 키에 누락되는 데이터는 조회 X
어느 한쪽의 테이블 자료는 무조건 조회되도록 하여 누락 방지 > outer join
sub query
- () 안에 기술
- 독립적인 실행이 되어야함
- select절, where절, from절에서 사용 가능하다
* where amt > any (sub query) : amt는 sub query의 최소값보다 크면 true
* where amt < any (sub query) : amt는 sub query의 최대값보다 작으면 true
* where amt > all (sub query) : amt는 sub query의 최대값보다 크면 true
* where amt < all (sub query) : amt는 sub query의 최소값보다 작으면 true
[MySQL]Case | Loop&While | Cursor | Trigger | Backup & Restore (0) | 2024.05.03 |
---|---|
[MySQL] VIEW | 숫자 함수 | 문자 함수 | 논리 함수 | 집계 함수 | 날짜 함수 | Function | Procedure (0) | 2024.05.02 |
[MySQL] DBeaver | Insert | Update | Delete (0) | 2024.04.30 |
[MySQL] 다운로드 | 서버초기화 | 명령어 | 암호변경 | 사용자생성 | 권한부여 | 경로지정 | TABLE | 기본구조 | 실습 (0) | 2024.04.29 |
[MySQL] Oracle과 MySQL 연결하기 (0) | 2024.03.28 |