16:48 에서 말씀하신 것처럼 결제 완료 Event 로그를 남길 때 State로서 여러가지 Parameter를 같이 남길 수가 있으니까요. 정보들도 같이 보관을 하게 되면 각 카테고리 별 해시맵이던 벡터 계산이던 해서 향후 개개인의 사용자에게 사용 패턴이나 주문한 음식 등의 정보를 바탕으로 맞춤 추천이 가능할 것 같아요. (예시: 보통은 국물 요리나 한식 위주로 먹는 사람도 파스타를 며칠에 한 번 주문을 하는지 등의 정보도 가공해서 평소와 다르게 양식을 추천으로 보여준다던지..) 결제 이력이나 이런 정보도 결국은 서버 로그라는 큰 틀 안에 있는 세부적인 요소인 건가요?
1)사용자 A는 특정페이지를 열어놓고 보다가 다른 탭을 열어서 다른 사이트에서 정보 검색을 합니다. 2) 30분이 지났습니다.(세션 끊김) => view = 1 sessions = 0 ? 3) 사용자 A는 다른탭을 보다가 다시 특정페이지 탭을 클릭합니다. ==> view = 1 sessions = 1? === 예시에 따른 답을 적어 봤는데... 이게 맞나요?? "해당 페이지의 참여율이 아닙니다. 해당 세션의 참여율이라서 그 페이지와 관련있는 세션의 참여율을 보여주게 됩니다. " 위 말이 이해가 잘 안 됩니다 ㅠ 참여율이 '세션 참여율'이라는 건 이해 됐는데, 이 세션 참여율이 페이지 참여율이 아닌 게 어떤 뜻일까요..?
안녕하세요 강사님! 항상 강의 잘 듣고있습니다! 구글 빅쿼리 내용에서 궁금한 점이 있어 질문남깁니다. SQL 쿼리 작성시 FROM 뒤에 나오는 테이블명은 항상 백틱으로 감싸야한다고 말씀주셨는데요. 현재 제가 별도로 빅쿼리를 공부하고있는데, 항상 FROM 뒤에는 그냥 테이블명을 넣어서 쿼리를 작성했거든요.(다른 SQL 강의에서도 FROM 뒤에 테이블명을 별도로 백틱으로 감싸지않았구요!) 이때는 데이터셋 내 테이블이 1개인 상황이였고, FROM뒤에 테이터 ID를 넣지않고 실제 데이터명을 넣었습니다. 이부분때문에 백틱으로 테이블을 감싸는지에 대한 여부가 달라지지않나 추측하는데요. 해당 내용이 맞을지 문의드립니다.
안녕하세요. 총 정리 문제 풀이 5번의 선생님의 쿼리와, 해설을 보기 전에 개인적으로 써본 쿼리의 각각의 결과가 달라 어디서 오류를 범했는지 알고 싶어 질문합니다. 선생님께서 쓰신 쿼리는 다음과 같았습니다. WITH에서 먼저 trainer_pokemon과 pokemon을 JOIN한 후, 마지막에 trainer를 JOIN하셨습니다. 결과는 Kyle의 포켓몬 공격력+방어력 총합 1951였습니다. WITH total_stats AS ( SELECT tp.trainer_id, SUM(p.attack + p.defense) AS total_stat, FROM basic.trainer_pokemon AS tp LEFT JOIN basic.pokemon AS p ON tp.pokemon_id = p.id GROUP BY tp.trainer_id ) SELECT t.name, ts.trainer_id, ts.total_stat FROM total_stats AS ts LEFT JOIN basic.trainer AS t ON ts.trainer_id = t.id ORDER BY total_stat DESC LIMIT 1 그리고 저는 다음과 같이 썼습니다. 선생님의 순서와 다르게, WITH에서 먼저 trainer_pokemon과 trainer를 JOIN한 후, 마지막에 pokemon을 JOIN했습니다. 결과는 Kyle의 포켓몬 공격력+방어력 총합 1856였습니다. WITH pokemon_cnt_table AS( SELECT t.id, t.name, tp.pokemon_id, COUNT(tp.id) AS pokemon_cnt, FROM `basic.trainer_pokemon` AS tp LEFT JOIN `basic.trainer` AS t ON tp.trainer_id = t.id GROUP BY t.id, t.name, tp.pokemon_id ) SELECT pct.id, pct.name, SUM(attack) AS attack_sum, SUM(defense) AS defense_sum, SUM(attack + defense) AS a_plus_d_sum, FROM pokemon_cnt_table AS pct LEFT JOIN `basic.pokemon` AS p ON pct.pokemon_id = p.id GROUP BY pct.id, pct.name ORDER BY a_plus_d_sum DESC LIMIT 1 결과가 달라진 이유에 대해, 제 나름대로 생각해 본 것은, JOIN의 순서가 달라 WITH 내의 1) SELECT, 2) FROM ON의 키도 다른 점이 출력 데이터에 영향을 준 것이 아닐까 하는 것입니다. JOIN의 순서 차이로 결과가 달라질 수 있을까요? 제가 작성한 쿼리의 오류에 대한 확인이 번거로우시다면, 결과에 대한 JOIN 순서 차이의 영향 유무에 대해서만 답해 주셔도 감사하겠습니다. 미리 감사합니다.
안녕하세요. 조건문 연습 문제 5번의 선생님께서 쓰신 정답에 관해 질문입니다. select 안에, 포획 날짜를 표시하기 위해 원래 basic.trainer_pokemon 안에 존재하는 catch_datetime을 쓰셨는데, Asia/Seoul 시간대로 변경되지 않은 상태를 그대로 쓰신 이유가 있을까요? SELECT id, trainer_id, pokemon_id, catch_datetime, IF (DATE(catch_datetime, "Asia/Seoul") > "2023-01-01", "Recent", "Old") as recent_or_old FROM `basic.trainer_pokemon` if 함수 내에서 수정한 날짜를 보여주기 위해, 똑같이 수정한 날짜를 썼는데, 문제 없을까요? SELECT id, trainer_id, pokemon_id, DATE(catch_datetime, "Asia/Seoul") as corrected_catch_date, IF (DATE(catch_datetime, "Asia/Seoul") > "2023-01-01", "Recent", "Old") as recent_or_old FROM `basic.trainer_pokemon` 미리 감사합니다.
안녕하세요, 4-5. 연습 문제 1번 (#트레이너가 포켓몬을 포획한 날짜(catch_date)를 기준으로, 2023년 1월에 포획한 포켓몬의 수를 계산해 주세요.) 의 정답을 보고 의문이 있어 질문 올립니다. 선생님께선 아래와 같이 쿼리를 작성해 주셨는데요. count 함수의 변수, id는 처음부터 고유한 번호인데 distinct를 걸어주신 이유를 알고 싶습니다. (count 결과는 85) select count(distinct id) as cnt from `basic.trainer_pokemon` where extract (year from datetime(catch_datetime, "Asia/Seoul")) = 2023 and extract (month from datetime(catch_datetime, "Asia/Seoul")) = 1 실험적으로, trainer_id를 변수로 쓴 것과, distinct를 걸어서 trainer_id를 변수로 쓴 것의 결과를 확인해 보니, 각각 85, 48이었습니다. select count(trainer_id) as cnt, count(distinct trainer_id) as distinct_cnt from `basic.trainer_pokemon` where extract (year from datetime(catch_datetime, "Asia/Seoul")) = 2023 and extract (month from datetime(catch_datetime, "Asia/Seoul")) = 1 1명의 트레이너가 2023년 1월에 2마리 이상의 포켓몬을 포획하는 경우도 있을 수 있으니, distinct를 걸어버리면, 1월에 여러 번 포획한 횟수가 1회로 줄어버리지 않을까 생각되는데, 잘못된 곳이 있다면 짚어주셨으면 합니다. 미리 감사합니다.
안녕하세요. as로 명명하는 것에 관해 질문드립니다. "2-5. 집계(GROUP BY + HAVING + SUM/COUNT)"에서 선생님께선 다음과 같이 쿼리를 작성해주셨는데요. select type1, count(id) as cnt from `basic.pokemon` group by type1 having cnt >= 10 order by cnt desc count(id)를 cnt로 명명한 후, having과 order by에서 그 별명을 이용하여 간단히 입력하신 걸 이해했습니다. 여기서 sql에 익숙해지고자, 여러 시험을 해보았는데, 다음과 같은 쿼리도 같은 결과를 출력할 수 있었습니다. select type1, count(type1) as cnt from `basic.pokemon` group by type1 having count(id) >= 10 order by count(kor_name) desc select 내의 count 괄호 내에는 type1 열을 불러 읽고, having 내의 count 괄호 내에는 id 열을 불러 읽고, order by 내의 count 괄호 내에는 kor_name 열을 불러 읽고, as로 select 내의 count 함수를 따로 명명해주었지만 그 별명을 사용하지는 않았습니다. 즉, 각 count 함수의 변수를 모두 전혀 다른 것들을 불러 읽는 엉망진창(...)으로 만들어 보았는데요. 그럼에도 불구하고, 문제 없이 같은 결과가 출력된다는 것은, as는 입력 간편화를 위해 이용하는 것이니, 명명을 하더라도 이용하지 않아도 출력상 문제는 없다고 이해해도 될까요? 그리고 count 내 변수를 랜덤하게 지정해도 같은 결과가 나옴에도 불구하고, id 열을 변수로 쓰는 이유는, 실무에서는 값이 누락되어 있을 가능성이 있을 열이 아닌, 하나의 row마다 반드시 값이 주어지는 열(=id 열)을 쓰는 것이 잘못된 집계를 피하기 위함이라고 이해해도 될까요? 글이 길어졌지만, 답변을 기다립니다. 미리 감사합니다.
안녕하세요 🙂 열심히 적어봤습니다. 적고 다른 사람들 제출내용 봐야겠네요 1. 화면구성성공여부: CTR, CVR 설정 후 넓은 영역, 가운데, 위 등 중요 영역일수록 높은 수치가 나와야 함. 검색기능 만족평가: 검색 결과에서 스크롤을 적게 한 뒤 전환율 확인(검색결과 상위 클릭, 재검색 낮도록) 필터기능 평가: 필터 선택 후 스크롤 적게 움직이고 CTR, CVR 확인(검색 후 클릭/스크롤양) 배달앱지표: 전환까지 걸리는 시간 / 소비자는 배고픈게 문제고 빨리 문제를 해결하기 위해 / 맞춤,추천기능, 빠른배달업체 제안, 전환단계 축소, 카테고리로 빠른 진입 커머스추천알고리즘성능확인지표: 구매전환율 / 평소 관심있어하던 제품을 적절한 가격으로 추천하여 구매하게 만드는 성능파악 자주사용하는서비스의 지표: 인스타: 광고클릭률 / 주요수입원임 / 접속 빈도, 체류시간 유튜브(프리미엄의 경우): 구독 지속율 / 주요수입원이므로 / 체류시간, 첫 화면에서 영상 선택율 네이버뉴스: 기사길이에 따른 스크롤양 / 뉴스에 얼마나 집중하는지 / 다른 뉴스 클릭률, 댓글작성이나 감정표현 가입퍼널 온보딩 효과: 가입전환율 상승, 온보딩중 이탈율, 가입 후 사용비율, 제품사용관련 문의율
항상 잘 듣고 있습니다. 예시 두개 푼거에서, 사용자 기준으로 했을때, 특정 이벤트 (purchase, checkout) 앞뒤의 모든 이벤트와 세션을 포함하던데. -> 세그먼트 생성 기준에서 기준이 사용자일경우, 그 기간내의 모든 세션과 이벤트가 전부 카운트 되서 나오는건가요? 이게 좀 상식적으로 이해가 잘 안되서요.
1. WITH 사용하지 않고 FROM으로 묶은 후 쿼리 작성 이어나가기 2. WITH 사용하기 안녕하세요. 위의 두 경우 모두 쿼리 결과는 동일하게 나오는데, WITH를 사용하는 정확한 이유가 오로지 가독성을 위한 것인지, 용량에도 차이가 생기는 것인지 궁금해 질문드립니다. (개인적으로는 문제를 풀 때 바로 묶는 것이 더 편하기 때문에 여쭤봅니다.!)
실제 데이터 집계를 할때 예를들어, 다음과 같이 모델링이 되었다고 했을때, 보고서에 결과가 다음과 같이 나오는게 맞나요? 데이터 : 유저 A : Refferal (80%) - Org. Search (20%) 유저 B : Paid Search (40%) - Refferal (60%) 결과 : 1순위. Refferal : 140%에 해당하는 어떤 수치. 2순위. Paid Search : 40%에 해당하는 어떤 수치 3순위. Org. Search : 20%에 해당하는 어떤 수치 섹터8 마지막 강의 5:44부터 이해가 잘안됩니다. 어떻게 이런 결론에 다다랐는지 자세히 설명해주실수 있으신가요? 광고 - 모델 비교에서 Email은 잠재고객을 쇼핑몰로 유도하는데 중요한 역할이지만, 구매하게 하려면 다른 채널의 도움이 필요 5~8 채널은 이전에 사이트를 방문한 방문자와 상호 작용하고, 처음에 다른 채널에서 사이트를 방문한 재방문자를 전환하는데 도움이 됩니다.