#쿼리 1번
select a.*, (select count(*) from b b.idx = a.idx) as cnt
from a
limit 10;
#쿼리 2번
select a.* ,count(*) cnt from a join b using(idx)
group by a.idx
limit 10;
--=---
이거 내 추측인데
1번은 10개 a에 row를 가져와서 다시 서브쿼리 10번 돌릴테고
2번은 a에서 row 다... 가져오고, b에서 row 다 가져와서 조인하고 그것을 다시 grouping 해서 그 중에서 10개를 가져오는걸로 보임.
--=--
즉, 1번이 디따 더 좋지 않을까?
=================
'프로그램개발 > DB(MySQL,MariaDB,MongoDB)' 카테고리의 다른 글
| mysql 데몬 자동으로 죽는 현상 발생 (skip-name-resolve) (0) | 2017.02.24 |
|---|---|
| MySQL UNION 기본 참고 URL (0) | 2017.02.09 |
| MySQL 원격 증분 백업 – Percona XtraBackup (0) | 2016.05.16 |
| mysql 함수들 영상으로 볼수 있는곳~ (0) | 2016.02.25 |
| 두 테이블을 비교해서 같지 않은 값만 출력하기 (0) | 2016.02.19 |