전체보기
-
Real MySQL [7-13] 쿼리 작성 및 최적화MySQL 2017. 2. 17. 23:27
본 게시물의 내용과 이미지는 도서 Real MySQL의 내용을 재구성하여 작성되었습니다. 저자, 출판사에 의해 저작권 문제 발생시 게시물이 비공개 될 수 있음을 알립니다. INNNER JOIN과 OUTER JOIN의 선택 INNER JOIN은 조인의 양쪽 테이블 모두 레코드가 존재하는 경우에만 레코드가 반환된다. 하지만 OUTER JOIN은 아우터 테이블에 존재하면 레코드가 반환된다. 쿼리나 테이블의 구조를 살펴보면 OUTER JOIN을 사용하지 않아도 될 것을 OUTER JOIN으로 사용할 때가 상당히 많다. 때로는 OUTER JOIN으로 실행하면 쿼리의 처리가 느려진다고 생각하고, 억지로 INNER JOIN으로 쿼리를 작성하려는 경우도 있다. 사실 OUTER JOIN과 INNER JOIN은 실제 가져..
-
새로남마라톤 - 하프훈련 2차카테고리 없음 2017. 2. 17. 00:01
4월 29일 새로남마라톤 대회가 73일 남았다. 훈련량은 거의 0.5%정도 밖에 미치지 못해 걱정이다.날씨를 핑계로 훈련을 안하기는 했지만 확실히 온도가 낮은 경우 야외 마라톤은 정말 힘들다.다행히 2차 훈련에는 기온이 바람막이 하나만 입어도 약간의 땀이 날 정도여서 훈련을 진행할 수 있었다. km당 평균속도 5분 50초대를 유지하며 7km 목표로 유지하였다. 지난 대회와 비교했을 때 체중이 4킬로 정도 증가하여 확실히 무릎과 발목에 무리가 덜가게 하기 위해 속도를 늦출수밖에 없었다. 요즈음에 감기로 인해 업무외의 따로 저녁에 시간을내어 하던 공부를 거의 안하고 수면시간이 확보되니 확실히 몸 컨디션은 좋았다. 초반 10분동안 까지도 몸에 무리가 없는 느낌이 있어 어렵지 않게 완주가 가능하겠다 싶은 생각이..
-
Real MySQL [7-12] 쿼리 작성 및 최적화 - OUTER JOINMySQL 2017. 2. 15. 20:21
본 게시물의 내용과 이미지는 도서 Real MySQL의 내용을 재구성하여 작성되었습니다. 저자, 출판사에 의해 저작권 문제 발생시 게시물이 비공개 될 수 있음을 알립니다. OUTER JOIN 주의사항 OUTER JOIN에서 OUTER로 조인되는 테이블의 칼럼에 대한 조건은 모두 ON절에 명시해야 한다. 조건을 ON 절에 명시하지 않고 다음 예제와 같이 OUTER 테이블의 칼럼이 WHERE 절에 명시하면 옵티마이저가 INNER JOIN과 같은 방법으로 처리한다. SELECT * FROM employees e LEFT JOIN dept_manager mgr ON mgr.emp_no=e.emp_no WHERE mgr.dept_no='d001'; 위의 쿼리는 ON 절에 조인 조건은 명시했지만 OUTER로 조인되..
-
[93번째 책] 맞아죽을 각오로 쓴 한국, 한국인 비판 (★★★☆☆)1000권 독서 2017. 2. 15. 09:32
제목에서부터 저자의 메시지가 느껴지는 무언가 포스를 담고있는 책. 1960년대부터 20여년을 한국에서 생활한 일본인 사업가인 저자가 한국사회와 한국에 대한 자신의 생각을 담을 책이다. 다른 국가에 비해 한국인들의 반일 감정이 큰 만큼 저자가 전달하려고 싶은 의도와는 달리 독자들의 불편한 마음이 있지는 않을까 염려되었지만, 책을 읽으면서 저자가 한국에 대한 애정만큼 독자에 대한 배려 또한 세심하게 다뤄져 있어 그 걱정은 단순한 염려에 불과했다. 한국인으로서 내가 생각하기에도 이건 아니다 싶은 부분들을 속 시원히 짚어주는 부분들이 많아 속이 시원하기도 했지만 나의 생활을 되돌아 보았을때 분명 고칠점들이 있어서 반성이 되기도 했다. 가장 공감이 되었던 내용은 한국이 일본의 경제적 수준을 따라잡는데는 수십년..
-
Real MySQL [7-11] 쿼리 작성 및 최적화 - JOINMySQL 2017. 2. 14. 20:20
본 게시물의 내용과 이미지는 도서 Real MySQL의 내용을 재구성하여 작성되었습니다. 저자, 출판사에 의해 저작권 문제 발생시 게시물이 비공개 될 수 있음을 알립니다. 이번 포스팅에서는 JOIN이 어떻게 인덱스를 사용하는지에 대해 각 쿼리 패턴별로 자세히 살펴보자. JOIN의 순서와 인덱스 인덱스 레인지 스캔으로 레코드를 읽는 순서를 정리해보자 1) 인덱스에서 조건을 만족하는 값이 저장된 위치를 찾는다. 이 과정을 인덱스 탐색(Index seek)이라고 한다. 2) 1번에서 탐색된 위치부터 필요한 만큼 인덱스를 죽 읽는다. 이 과정을 인덱스 스캔(Index scan)이라고 한다. 3) 2번에서 읽어들인 인덱스 키와 레코드 주소를 이용해 레코드가 저장된 페이지를 가져오고, 최종 레코드를 읽어온다. 인덱..
-
[92번째 책] 부자의 경제학, 빈민의 경제학 (★★★☆☆)1000권 독서 2017. 2. 13. 20:13
유시민 작가의 책이라 더 관심이 갔던 책이다. 이 책의 소개를 통해 유시민작가가 경제학을 전공했다는 사실도 새로 알게되었다. 책에 대해 간략하게 소개하면, 역사적 사실들을 되짚어 보며 '경제학'이라는 범주에서 다양한 학설들과 배경이 된 환경적 요소들을 소개하고 한가지 학설을 통해 파생된 현상들과 한 학설에 영향을 받은 다른 학설들의 파생과 연관성을 소개하는 책이다. '경제학'이라는 범주를 정의해야 하는 이유가 사실 궁금했는데, 책에서는 삶을 살아가는 인류가 세상이 어떻게 돌아가고 있는제 '제대로' 알게 하기 위해서 '경제학'의 이론들이 나오게 되었다고 소개한다. 책에서 말한 설명대로 한 인간이 인생을 살아가면서 '경제'와 무관한 시간은 단 1초도 없다. 그만큼 인류에 지대한 영향을 끼치고 있는 경제학이..
-
Python Garbage CollectionPython & Flask & Django 2017. 2. 10. 20:39
digi.com/wiki에 게시된 Python Garbage Collection 이라는 글을 번역하였습니다. [원문] http://www.digi.com/wiki/developer/index.php/Python_Garbage_Collection Python 메모리 관리 파이썬의 메모리 할당과 해제는 자동으로 이뤄진다. C나 C++과 같은 언어에서 동적으로 메모리 할당을 해야하는 방식과는 반대로 파이썬 사용자는 메모리를 할당하거나 해제할 필요가 없다. 파이썬은 메모리 할당을 위해 reference couning 과 garbage collection 두가지 방식을 사용한다. 파이썬 2.0 이전에는 메모리 관리를 위해 인터프리터에서 reference counting 방식만 사용했다. Reference coun..