안녕하세요 카일님! 강의 너무 잘 듣고 있습니다! 온오프라인에서 SQL실무와 관련된 강의가 없어 많이 고민했는데 카일님 강의 덕분에 입문 강의 부터 정말 많이 배웠습니다 ㅜㅜ! 아래 일자별 퍼널을 PIVOT 해보는 쿼리를 짜봤는데 피드백 주시면 너무 감사하겠습니다! 더불어서 PIVOT을 할 때 제가 아래 주석처리한 것들도 디버깅 했을때는 동일하게 나왔는데 혹시나 실무단에서 어떻게 하는건 조심해야한다! 라는 부분이 있을지도 궁금합니다..! 항상 감사합니다 :) #일자별 퍼널 PIVOT WITH base AS ( SELECT event_date, event_timestamp, event_name, user_id, user_pseudo_id, platform, MAX(IF(param.key = "firebase_screen", param.value.string_value, NULL )) AS firebase_screen, -- MAX(IF(param.key = "food_id", param.value.int_value, NULL )) AS food_id, MAX(IF(param.key = "session_id", param.value.string_value, NULL )) AS session_id, -- param.key AS screen, -- param.value.string_value AS string_value, -- param.value.int_value AS int_value, FROM `advanced.app_logs` CROSS JOIN UNNEST(event_params) AS param WHERE -- event_date = "2022-08-01" #적은 데이터로 쿼리를 작성하기 위해 만들어둔 조건 event_date BETWEEN "2022-08-01" AND "2022-08-18" GROUP BY ALL ), filter_event_and_concat_event_and_screen AS ( SELECT * EXCEPT(event_name,firebase_screen), CONCAT(event_name, "-", firebase_screen) AS event_name_with_screen, DATETIME(TIMESTAMP_MICROS(event_timestamp), "Asia/Seoul") AS event_datetime FROM base WHERE event_name IN ("screen_view", "click_payment") ), event_by_user_cnt_by_date AS ( --event_name + screen (필요한 이벤트만 WHERE 조건에 걸어서 사용) --step_number + COUNT --step_number : CASE WHEN 사용해 숫자 지정 1~6 (welcome, home, food_category, restaurant, cart ) SELECT -- DISTINCT event_name_with_screen, #해당 열 Unique값 확인 가능 event_date, #일자별로 퍼널별 유저수 쿼리 event_name_with_screen, -- event_datetime, user_pseudo_id, CASE WHEN event_name_with_screen = "screen_view-welcome" THEN 1 WHEN event_name_with_screen = "screen_view-home" THEN 2 WHEN event_name_with_screen = "screen_view-food_category" THEN 3 WHEN event_name_with_screen = "screen_view-restaurarnt" THEN 4 WHEN event_name_with_screen = "screen_view-cart" THEN 5 WHEN event_name_with_screen = "click_payment-cart" THEN 6 ELSE NULL END AS step_number, # 퍼널 단계 표시 COUNT(DISTINCT user_pseudo_id) AS cnt FROM filter_event_and_concat_event_and_screen GROUP BY ALL --screen_view-restaurant/screen_view-food_detail/screen_view-search/screen_view-search_result 도 퍼널 정의에 어떻게 넣을지 생각해보고 단계에 넣어보기 > 고객이 어떤 흐름으로 움직이는지 확인해보기 HAVING step_number IS NOT NULL ORDER BY event_date ) SELECT event_date, SUM(IF(event_name_with_screen = 'screen_view-welcome', cnt, NULL)) AS screen_view_welcome, SUM(IF(event_name_with_screen = 'screen_view-home', cnt, NULL)) AS screen_view_home, SUM(IF(event_name_with_screen = 'screen_view-food_category', cnt, NULL )) AS screen_view_food_category, SUM(IF(event_name_with_screen = 'screen_view-restaurarnt', cnt, NULL)) AS screen_view_restaurarnt, SUM(IF(event_name_with_screen = 'screen_view-cart', cnt, NULL)) AS screen_view_cart, SUM(IF(event_name_with_screen = 'click_payment-cart', cnt, NULL)) AS click_payment_cart, -- MAX(IF(event_name_with_screen = 'screen_view-welcome', cnt, NULL)) AS screen_view_welcome, -- MAX(IF(event_name_with_screen = 'screen_view-home', cnt, NULL)) AS screen_view_home, -- MAX(IF(event_name_with_screen = 'screen_view-food_category', cnt, NULL )) AS screen_view_food_category, -- MAX(IF(event_name_with_screen = 'screen_view-restaurarnt', cnt, NULL)) AS screen_view_restaurarnt, -- MAX(IF(event_name_with_screen = 'screen_view-cart', cnt, NULL)) AS screen_view_cart, -- MAX(IF(event_name_with_screen = 'click_payment-cart', cnt, NULL)) AS click_payment_cart, -- MAX(CASE WHEN event_name_with_screen = 'screen_view-welcome' THEN cnt END) AS screen_view_welcome, -- MAX(CASE WHEN event_name_with_screen = 'screen_view-home' THEN cnt END) AS screen_view_home, -- MAX(CASE WHEN event_name_with_screen = 'screen_view-food_category'THEN cnt END) AS screen_view_food_category, -- MAX(CASE WHEN event_name_with_screen = 'screen_view-restaurarnt'THEN cnt END) AS screen_view_restaurarnt, -- MAX(CASE WHEN event_name_with_screen = 'screen_view-cart'THEN cnt END) AS screen_view_cart, -- MAX(CASE WHEN event_name_with_screen = 'click_payment-cart'THEN cnt END) AS click_payment_cart FROM event_by_user_cnt_by_date GROUP BY event_date ORDER BY event_date ;
강의 중에는 hwp.saveAs() 명령어 실행 시 파일명을 지정할 수 있는 창이 뜨는데 뜨지 않네요. 사용하는 버전은 아래와 같습니다. 사용한 버전 정보 알 수 있을까요? (venv) c:\ws\python\hwp>python -V && pip show hwpwings Python 3.13.1 Name: hwpwings Version: 0.4.7 Summary: 파이썬으로 한글 문서를 제어할 수 있는 두번째 라이브러리입니다. Home-page: https://www.youtube.com/@한파엑셀 Author: 한파엑셀 Author-email: hpxl0518@gmail.com License: Location: c:\ws\python\hwp\venv\Lib\site-packages Requires: lxml, pandas, pywin32 Required-by:
cursor ai 설치를 하면서 중간에 open cursor from terminal 이것을 설치 하는 부분에서 설치가 되지 않습니다. 그래서 그냥 패스 하고 설치를 했는데 어디에서 저걸 설치를 해야할까여? 저게 설치가 되지 않아서 인지 강의에서 보이는 오픈 파일 중에서 CLAUDE.md 파일이 보이지 않습니다.
이전에.. claude-nextjs-starterkit, claude-code-mastery, claude-nextjs-starters 등등 여러개의 폴더를 생성 해서 next.js 를 설치 하고 진행 하는 영상이 있었는데요. 74 미션에서 위의 첨부한 그림은 claude-nextjs-starters 인데..목소리는 claude-nextjs-starterkit 을 다운 받으라고 하고..도대체 뭐가 맞는 건가요? 아니면..그냥 next.js 설치 해서 하면 되는건가요? 차라리..이게 더 편하겠는데..
88. 서브에이전트 를 보니까..72 메타프롬프트 활욘 PRD 생성(+MVP) 에서 새롭게 시작 한다는 노션을 사용 하는 화면을 확인할 수 있었습니다. 그 이전에서는 화면을 볼 수 없어서..88 까지 확인을 했는데요. 궁금한게 72 영상을 보면 claude_nextjs_starters 라는 것을 복사 해서 새로운 폴더를 만들었는데요. claude_nextjs_starters 라는 것은 이전 챕터 MCP 에서만 하더라도 shadcnui 로 로그인 페이지 만들고 하던 것 아니었나요? 그런데 여기에 노션 작업을 추가 하는 건가요? CLAUDE.md 를 참고사항으로 적는 걸 보면 68,69 mcp server 영상 에서의 claude_nextjs_starters 는 아닌 것 같은데.. 도대체 감을 못잡겠네..
이 화면에서 clear 없이 메세지를 입력하면 "토큰이 정말 빨리 소모되겠죠" 라고 설명해주셨는데요. 저 그림에서 토큰 소모량 = Turn 1+Turn 2+Turn 3 인가요? 그렇다면 "빨리 소모"된다는 말이 납득이 되는데요, 그게 아니라 최종 Turn 이 토큰 소모량이라면, 결국은 추가 소모 되는 토큰은 해당 턴의 마지막 User message + 마지막 Text response 일텐데요, 그럼 "빨리 소모"되는 것이 아닌게 아닌가 싶어서요. 질문의 의미가 잘 전달되었을지 모르겠네요.
88. 서브에이전트 를 보니까..72 메타프롬프트 활욘 PRD 생성(+MVP) 에서 새롭게 시작 한다는 노션을 사용 하는 화면을 확인할 수 있었습니다. 그 이전에서는 화면을 볼 수 없어서..88 까지 확인을 했는데요. 궁금한게 72 영상을 보면 claude_nextjs_starters 라는 것을 복사 해서 새로운 폴더를 만들었는데요. claude_nextjs_starters 라는 것은 이전 챕터 MCP 에서만 하더라도 shadcnui 로 로그인 페이지 만들고 하던 것 아니었나요? 그런데 여기에 노션 작업을 추가 하는 건가요? CLAUDE.md 를 참고사항으로 적는 걸 보면 68,69 mcp server 영상 에서의 claude_nextjs_starters 는 아닌 것 같은데.. 도대체 감을 못잡겠네..
이번에 설계 1편에서 자연 키와 대리 키 부분을 학습하면서, 최근 구글이 이메일 변경을 부분적으로 검토하고 있다는 뉴스가 떠올랐습니다. 예전에는 이메일 변경이 거의 불가능했던 이유가 이메일을 자연 키처럼 사용해왔기 때문이라고 이해해도 될까요? 그리고 지금에 와서는 어떤 구조적 변화나 트레이드오프를 통해 이메일 변경이 가능해졌는지도 궁금합니다.
안녕하세요. 학습후 영상제작하여 자동으로 유튜브 업로드까지 해서 2일 운영했는데요. 구글계정 사용중지가 되었습니다. Gpt에서 확인했을때 자동화 업로드 감지시 계정 중단사유라고 하던데요. 혹시 이부분에 대해서 대응방법이 있을까요? 이의신청은 했지만 어떻게 될지는 모르겠습니다.
김영한의 실전 데이터베이스 입문 - 모든 IT인을 위한 SQL 첫걸음(SQL부터 차근차근)
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] insert into 할때 괄호로 열을 지정하지않고 생략한다면 table을 생성할때 작성한 열 순서대로만 넣어야하는건가요?? 강의에 열의 순서라는게 그걸 뜻하는게 궁금해요