본문 바로가기

Data Literacy

(114)
Chapter 2. JOIN을 이용한 데이터 조합 - (7) 집계 함수 : COUNT 2 앞서서 우리는 집계함수 COUNT( )에 대한 기본적인 사용법을 알아보았습니다. 다시 한번 되짚어보자면, COUNT의 파라미터에는 인수로 특정 테이블의 열 이름을 전달할 수 있습니다. 이렇게 열 이름을 지정하게 되면, 해당 열에 한해 행의 개수를 카운트하게 됩니다. 그리고 '*'를 인자 값으로 전달할 수 있는 함수는 COUNT( ) 함수가 유일합니다. 그럼, COUNT( ) 함수로 특정 열의 개수를 셀 때, NULL은 어떻게 처리할까요? 일단 행이 있긴 있으니 카운트에 포함하지 않을까요? 한번 직접 알아보도록 하겠습니다. 우선 dvdrental DB의 ADDRESS 테이블을 살펴보도록 하겠습니다. 전체 데이터를 살펴보고, ADDRESS2 칼럼에 NULL이 몇 개나 있을지 확인해 보겠습니다. select ..
2. GA 기본 세팅(1) - 계정과 속성 생성, 데이터 스트림 1 이번 아티클부터는 demo account 외의 직접 계정을 생성하고 세팅하는 방법에 대해서 살펴보겠습니다. 우선, 우리는 하나의 gmail 계정을 기준으로 100개의 계정을 생성할 수 있다고 했습니다. 한 개쯤 개인용 실습 계정을 만드는 것 정도는 크게 문제가 없겠죠? 우선 우리가 데모 계정을 살펴보고 있었다고 가정하고 - 좌측 하단의 관리자(Admin) 메뉴를 클릭해 보겠습니다. 그럼 아래와 같이 관리자 메뉴가 출력됩니다. 우리는 현재 로그인 한 gmail 계정에 새로운 '계정(Account : gmail 계정이 아닙니다!)'을 생성하려고 하니, [Create Account]를 클릭합니다. 그럼 아래와 같이 계정 이름(Account Name)을 입력하는 창과 계정의 데이터 공유 설정(Account Da..
Chapter 2. JOIN을 이용한 데이터 조합 - (7) 집계 함수 : COUNT 1 이번 시간부터는 빠르게 집계함수에 대해서 배워보겠습니다. 사실 원래는 GROUP BY를 배워볼 차례인데요, GROUP BY라는 clause가 짧은 문장으로 그 개념을 설명하기 쉽지 않은 구절입니다. 그러다 보니 몇몇 강의나 설명에서 바로 예제부터 설명한다거나(이렇게 모아주는 편리한 기능이에요~), 단순히 "같은 것 끼리 집합을 만들어 모아주는 거예요~" 정도의 추상적인 설명을 하기도 합니다. GROUP BY라는 clause는, 결국 집계함수와 함께 사용해야 의미있는 쿼리가 됩니다. 결국 SQL의 집계 함수에 대해서 사전에 이해가 이루어지고, GROUP BY를 배워야 그 관념이 자연스럽게 익혀지게 되는 것이죠. 그리고 그 이후에 HAVING 같은 구문을 학습하게 되면 가장 자연스러운 이해를 진행할 수 있습..
1. GA 기능 프리뷰(6) - 수익 창출(Monetization) 세부정보 리포트 이번에는 수익 창출과(Monetization) 관련된 리포트와 메뉴들에 대해서 살펴보도록 하겠습니다. 아래 이미지처럼 메뉴를 보시면 수익 창출(Monetization) 하위에 전자상거래 구매(Ecommerce Purchases)를 비롯한 몇 가지 메뉴가 보이는 것을 확인할 수 있습니다. 일단 제일 먼저 전자상거래 구매(Ecommerce Purchases)를 살펴보도록 하겠습니다. 아래와 같은 구성으로 시계열 차트와 테이블이 (또) 등장하고 있습니다. 여기 하단의 테이블의 측정 기준(Dimensions)이 무엇인지 확인해 볼까요? 여기에서의 기본 측정 기준(Dimensions)은 바로 항목 이름(Item Name)입니다. 내역을 보면 해당 샵에서 판매하는 개별 상품들의 이름이라는 것을 쉽게 눈치챌 수 있습..
1. GA 기능 프리뷰(5) - 참여(Engagement) 세부정보 리포트 이번 아티클에서는 참여(Engagement)에 대한 내용들을 다뤄보겠습니다. 이전의 획득(Acquisition)의 경우 사용자의 유입 경로를 중심으로 다루는 영역이었죠. 이번 시간부터 다룰 참여(Engagement)는 아래 이미지의 메뉴에서 예상할 수 있듯이 이벤트(Event)나 전환(Conversion) 등의 '상호작용'을 중심으로 다루는 부분입니다. * Acquisition : 어떻게 왔는가? * Engagement : 무슨 짓을 했는가? 물론 여기서 말하는 참여(Engagement)와 비슷하게 사용하는 '참여 유저'의 개념이 있습니다. 1. GA 기능 프리뷰(2) - 인구통계 : 측정 기준, 측정 항목, 세션, 이벤트, 전환 이제 GA의 메뉴들 중, [인구 통계] 기능을 먼저 중점적으로 훑어보겠습니..
Chapter 2. JOIN을 이용한 데이터 조합 - (6) NATURAL JOIN 우선 이번 아티클에서는 NATURAL JOIN을 살펴보겠습니다. 사실, 이 NATURAL JOIN은 실제 사용 빈도가 꽤 낮기 때문에 잘 사용하지 않는 명령어입니다. 그런데 굳이 이 명령어에 대해서 살펴보는 이유는 무엇일까요? 이유는, 다름 아닌 "INNER JOIN"의 사용법을 한번 더 상기시키는 명령어이기 때문입니다. 일단 우리가 이미 살펴보았던 INNER JOIN을 되새기고 오도록 하겠습니다. Chapter 2. JOIN을 이용한 데이터 조합 - (1) INNER JOIN 우선 당연하겠지만, JOIN이란 명령어 자체에 대한 정의가 이루어져야 JOIN과 관련된 내용을 배울 수 있을 것입니다. 기본적으로 SQL에서 JOIN은 [한 DB내의 두 개 이상의 테이블에서 레코드를 조합하 nozeroslope...
1. GA 기능 프리뷰(4) - 획득(Acquisition) 세부정보 리포트 : 사용자 획득, 기본 채널 그룹(유입경로) 2 앞선 내용에서 획득(Acquisition)과 관련된 내용을 살펴보았고, 신규 사용자 기본 채널 그룹(First User Default Channel Group)과 관련된 내용을 알아보았습니다. 여기서 이 채널 그룹의 분류를 적용하는 기준이 무엇일까요? 자동으로 페이지를 인식하고, 거기서 채널의 종류를 구분하는 것일까요? 사실은 생각보다 이러한 구분이 자동화되어있지는 않습니다. 그래서 실제로는 검색 사이트 / 영상 사이트 / 쇼핑 사이트 / 소셜 사이트 도메인을 수집하여 분류해놓고 있고, 해당하는 사이트에서 유입이 되거나 광고가 집행된다면 그 도메인 구분 값을 기준으로 채널 그룹을 분류하게 됩니다. 예를 들어볼까요? 검색엔진으로 구분되는 도메인은 baidu, br.search.yahoo.com, msn, ..
Chapter 2. JOIN을 이용한 데이터 조합 - (5) CROSS JOIN 이번 아티클에서는 CROSS JOIN을 살펴보겠습니다. 우선 CROSS JOIN은 또 무엇을 의미하는가? 이해를 하고 넘어가야겠죠. 100% 정확한 학술적 정의는 아니지만, 간단히 말해서 '곱집합'의 형태인 catesian product 연산을 구현합니다. 예를 들어 두 개의 테이블이 있을 경우, 각각의 값들이 모두 매치되는 경우의 수를 전부 표현하게 되는 것이죠. 만일 2명의 사람 A, B가 있고 색깔이 3개가 있다면 - 두 사람과 3개의 색상을 매칭할 수 있는 경우의 수는 (A, 빨강) (A, 파랑) (A, 노랑) (B, 빨강) (B, 파랑) (B, 노랑)의 형태로 6개가 나오겠죠? CROSS JOIN 역시 이러한 케이스를 테이블에서 연산하게 됩니다. 간단한 CROSS JOIN 실습을 위해, 아래와 ..