티스토리 뷰
728x90
반응형
1:N 관계에서 테이블을 join하다 보면 데이터가 중복되는 결과가 생긴다.
이럴 경우 중복을 제거해주어야 하는데 크게 두 가지 방법을 사용할 수 있다.
하나는 DISTINCT를 사용하는 방법이고 다른 하나는 group by를 사용하는 방법이다.
테이블 및 데이터 정의
- department 테이블과 emplyee 테이블을 join 하여 department 정보를 가져오는 경우
select dep.* from department dep join employee emp on dep.dep_no = emp.dep_no;
department 테이블과 emplyee 테이블을 join 하여 department 테이블 정보를 가져오고 싶은 경우 join을 사용하면 중복된 데이터가 존재한다. 이럴 경우 사용할 수 있는 방법이 2가지가 있다.
1. Distict를 사용하는 방법
select DISTINICT(dep.id) from department dep join employee emp on dep.department_no = emp.dep.department_no
2. group by를 사용하는 방법
1:N 관게를 가진 테이블 컬럼을 group by 걸어주면 중복이 제거 된다.
select dep.* from department dep join employee emp on dep.dep_no = emp.dep_no group by dep.dep_no ;
728x90
반응형
250x250
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- SQL
- JSON
- var
- 오늘의 공부
- 미라클모닝
- 라즈베리파이
- JS
- QT
- NestJS
- yocto
- CSS
- variable
- 재미있는
- 20.03.11.(목)
- 초아
- 모닝독서
- tailwind
- raspberrypi
- Linux
- 포인터
- 스타벅스
- opencv
- 자바스크립트
- JavaScript
- Python
- Kernel
- tailwindcss
- C
- js syntax
- Til
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
글 보관함