사용자 도구

사이트 도구


database:mysql:basic

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
database:mysql:basic [2019/05/13 14:44]
kwon37xi [현재 상태 보기]
database:mysql:basic [2020/05/24 18:07] (현재)
kwon37xi [STRAIGHT_JOIN]
줄 257: 줄 257:
 WHERE T2.key IS NULL; WHERE T2.key IS NULL;
 </​code>​ </​code>​
 +
 +===== STRAIGHT_JOIN =====
 +  * MySQL 이 join 순서 최적화를 잘 못할경우 **무조건 왼쪽 테이블 먼저 조회하게** 강제하는 옵션
 +  * 인덱스 힌트와 비슷한 역할을 하므로, 가급적 사용하지 않는게 좋다.
 +<code sql>
 +-- C, A, B 순서로 데이터를 읽어서 조인한다.
 +SELECT STRAIGHT_JOIN * FROM C
 +LEFT JOIN A
 +ON C.A_ID = A.A_ID
 +LEFT JOIN B
 +ON C.B_ID = B.B_ID  ​
 +ORDER BY <​가급적 C테이블의 컬럼>
 +</​code>​
 +  * [[https://​marobiana.tistory.com/​35|MySql] JOIN 속도를 빠르게! EXPLAIN, STRAIGHT_JOIN]]
  
 ===== mysql에서 쿼리 결과 세로로 보기 ===== ===== mysql에서 쿼리 결과 세로로 보기 =====
줄 327: 줄 341:
 </​code>​ </​code>​
  
 +===== GROPU BY, DISTINCT =====
 +  * ''​GROUP BY''​를 하면서, ''​COUNT(DISTINCT colName)''​ 을 하면, 동일 그룹에 속하는 ''​colName''​ 이 중복은 제거 상태로 카운팅 된다.
 +  * [[https://​dev.mysql.com/​doc/​refman/​8.0/​en/​group-by-functions.html#​function_count-distinct|GROUP BY functions - COUNT(DISTINCT)]]
database/mysql/basic.1557726282.txt.gz · 마지막으로 수정됨: 2019/05/13 14:44 저자 kwon37xi