서브 쿼리: select title from B테이블 WEHRE id IN(select id from A테이블 WEHRE id <100) ;
join : select * from B테이블 as b join A테이블 as a on b.id = a.id;
그리고 3개의 테이블을 join해서 결과를 가져왔어야 했는데, 예를 들어 다음과 같이 A B C 테이블이 있다고 보자.
즉 3개의 테이블을 한꺼번에 참고해서 가져와야 하는 문제가 있었다.
그래서 INNER JOIN과 서브쿼리를 사용하여 정보를 한꺼번에 가져올 수 있도록 하였다.
select a.title, b.title, b.date
from B테이블 as b
inner join (select * from C테이블 where 조건) as c ON 조건
inner join A 테이블 as a ON 조건;
✅ INNER JOIN은 조건에서 일치하는 값이 있는 행만 반환함, INNER 명시 안해줘도 됨.
컨테이너 이름:
image: 이미지 명:태그
ports:
- "3000:3000" // 포트 번호
depends_on:
- redis
networks:
- backend
데이터베이스 채팅, 리뷰 테이블 짜는 방식! 어떻게 해야 정규화의 이점을 가장 극대화할 수 있는지 그 경계를 더 깊게 공부해볼 것. 항상 느끼는 거지만 sql문은 하면서 까먹고 다시 찾아보면서 해서 시간이 오래걸린다. select * from 테이블 처럼 자유롭게 짤 수 있도록 노력해보자.
그리고 restAPI말고도 gragphQL이나 Typescript도 공부해보자.
JOIN 저번 프로그래머스 윈터코딩 테스트에서 풀지 못했던 유형이었는데 나름 빠르게 3개 테이블을 join할 수 있어서 뿌듯!
데이터베이스의 세계란....DBA 분들은 최고다.