정말 기본적인 생각임에도 불구하고, 처음부터 다시 생각해보는 의미로 작성하게 되었다.SQL에서 JOIN을 사용할 때 ON 조건을 작성하는 방식은 개발자마다 다를 수 있다. 하지만 드라이빙 테이블(Driving Table)을 JOIN 조건의 좌변에 두는 것이 더 좋은지에 대한 고민은 필요하다.이번 글에서는 드라이빙 테이블의 개념과 JOIN 조건에서 좌변과 우변의 차이를 살펴보고, 어떤 방식이 가독성과 유지보수에 유리한지 정리해 보았다.1. 드라이빙 테이블이란?JOIN이 실행될 때, SQL 옵티마이저는 어떤 테이블을 기준으로 다른 테이블과 매칭할지 결정한다. 이때 먼저 처리되는 테이블을 드라이빙 테이블(Driving Table) 이라고 한다.예제를 살펴보겠다.SELECT o.order_id, o.order_..
집계함수는 group by랑 연동해서 작업이 이루어진다 aggregation function 그룹바이와 집계함수는 연동된다! 그룹별로 최저값, 최대값, 평균값 등 그룹별로 작업을 하는데 전체합계도 구하고, 동시에 그룹별 합계도 구하고 싶다! ? 합계뿐만 아니라 집계를 같이 구하고싶다! 전체 행들에 대한 집계와 그룹별로의 집계! 를 구하고 싶은 경우에 어떻게 해야 할까 ? 전체에 대해 집계를 돌리고 그룹별로 집계를 돌리고싶다. 그룹별 집계는 '소계' 라고 한다. 전체집계와 (소그룹의집계)소계를 같이 구하고싶다! 한번에 구하고싶다? 그럴때는 ? 1) ROLLUP 함수 GROUP BY ROLLUP(A) : 전체합계, 칼럼A소계 GROUP BY ROLLUP(A,B) : 전체합계, 칼럼A소계, 칼럼A,B조합 소계..
- Total
- Today
- Yesterday
- 인덱스
- @Configuration
- 스프링 빈
- Oracle
- React
- 스프링 프로젝트
- 자바스크립트
- 스프링의정석
- 멀티스레딩
- MySQL
- 데이터베이스
- 옵티마이저
- node
- 이정환
- AWS
- 코드로 배우는 스프링 웹 프로젝트
- JavaScript
- 친절한SQL튜닝
- 리액트
- 한입크기로 잘라먹는 리액트
- 스프링
- Node.js
- spring
- SQL
- 남궁성
- EC2
- Spark
- 시큐리티
- 데브캠프
- 자바의정석
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |