- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요 .문제를 빨리 찾기 위해 써치윈도우를 사용했을때 문제명이 잘려서 문제를 찾는데 어려움이 있습니다. 문제명이 다 나오게 할수있는 설정방법은 없는지요. 알려주시면 감사하겠습니다.
안녕하세요! 11번 문제에서 GROUP BY를 필수로 사용해야 하는 이유가 궁금합니다. 11번 : pokemon 테이블 중 type2가 있으면서 가장 많은 수의 type1이 무엇인지에 대한 문제입니다. 저 같은 경우 GROUP BY를 빼고 SELECT type1 FROM pokemon.basic WHERE type2 IS NOT NULL ORDER BY type1 DESC LIMIT 1; 이렇게 쿼리를 짰는데, 답은 똑같이 나와서, GROUP BY를 사용하신 이유, 이 문제에서 GROUP BY를 사용해야 하는 이유가 궁금합니다.
PL/SQL 수행 중 1.커밋시점이 언제인지 궁금합니다. PL/SQL 모두 수행 후? 2. 대용량처리시 전체 쿼리 수행 후 커밋을 찍는게 나을지 아니면 for문 돌면서 중간중간 커밋을 찍는게 나을지 3.cursor로 중간에 insert중 에러났을 때 전체 롤빽이 되는것인지. 아니면 커밋을 찍지 않아도 자동으로 1000건정도 커밋이 되는것인지.
강의 다 듣고, 마지막에 주신 계산하기 좋은 형태로 만드는 피벗테이블을 만들어 보았습니다. 코드에 대한 피드백이 있으시다면 알려주세요! 감사합니다. WITH base AS( SELECT event_date, event_timestamp, event_name, user_id, user_pseudo_id, platform, MAX(IF(event_param.key = 'firebase_screen', event_param.value.string_value, NULL)) AS firebase_screen, -- MAX(IF(event_param.key = 'food_id', event_param.value.int_value, NULL)) AS food_id, MAX(IF(event_param.key = 'session_id', event_param.value.string_value, NULL)) AS session_id FROM advanced.app_logs CROSS JOIN UNNEST(event_params) AS event_param WHERE 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, event_timestamp), 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") ), pivot1 AS( SELECT event_date, event_name_with_screen, 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-restaurant' 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 HAVING step_number IS NOT NULL ORDER BY event_date, step_number ASC ) # 피벗 한번 더 돌려서 계산 쉽게 할 수 있는 테이블 형태 만들기 SELECT event_date, 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-restaurant', cnt, NULL)) AS `screen_view-restaurant`, 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` FROM pivot1 GROUP BY event_date ORDER BY 1;
아래와 같은 내용을 모르고 Win11 Home 버전에서 도커 설치에 여러가지 시행 착오를 겪고 Windows 11 Home 버전에서도 Hyper-V를 활성화해서 도커 설치에 성공한 방법을 공유드립니다. Windows 10 Pro, Enterprise 및 Education 64비트 버전에서만 사용할 수 있고 Home 버전에서는 사용할 수 없습니다. 특히 Docker Desktop for Windows 설치를 위해서는 반드시 Hyper-V를 지원하는 OS가 필요하지만 Home 버전에서는 Hyper-V 기능을 사용할 수 없는 탓에 Docker Toolbox(Virtual Box)를 이용한 가상화를 통해서만 Docker를 설치할 수 있습니다. 참고 사이트 https://forbes.tistory.com/542#google_vignette 1. 도커 에러 -> WSL2 설치 -> 도커 실행 X 2. Ubuntu 실행 에러 Installing, this may take a few minutes... WslRegisterDistribution failed with error: 0x800701bc Error: 0x800701bc WSL 2? ?? ?? ?? ????? ?????. ??? ??? https://aka.ms/wsl2kernel? ??????. Press any key to continue... -> Windows 기능 켜기 -> 도커 실행 X Linux용 Windows 하위 시스템 Windows - 하이퍼바이저 플랫폼(Hyper-V) 가상 머신 플랫폼 참고 사이트 https://mi2mic.tistory.com/228 3. Hyper-V 활성화 참고 사이트 https://geekorea.com/how-to-enable-hyper-v-windows11-home/ 4. 도커 설치 완료
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 해당 강좌에 ORACLE Function, ORACLE Procudure, ORACLE PL/SQL 내용도 포함되어있을까요?
33:56 SELECT count(col2) FROM TABLE WHERE col1 in (2,3) or col2 in (3,5); 에서 결과가 4인점은 이해가 됩니다. (count는 Null 포함 x) 다만 오른쪽 아래 테이블이 헷갈리는 데, 만약 count(col2)가 아닌 col2만 출력하면 아래 처럼 나오는걸로 이해하고 있습니다. col2 ---- Null 6 5 3 3 강사님께서는 count에 해당하는 투플만 테이블만 표현하신건가요? 또 집계함수(sum, avg, max,min,count) 모두 Null은 포함하여 계산하지 않는다고 이해하면 될까요?
# WEEKLY Retention 쿼리 WITH base AS( SELECT DISTINCT user_id, user_pseudo_id, event_name, DATE(DATETIME(TIMESTAMP_MICROS(event_timestamp), 'Asia/Seoul')) AS event_date, DATETIME(TIMESTAMP_MICROS(event_timestamp), 'Asia/Seoul') AS event_datetime FROM advanced.app_logs WHERE event_date BETWEEN "2022-08-01" AND "2022-11-03" ),first_week_and_diff AS ( SELECT *, DATE_DIFF(event_week, first_week, WEEK) AS diff_of_week FROM ( SELECT DISTINCT user_pseudo_id, DATE_TRUNC(MIN(event_date) OVER(PARTITION BY user_pseudo_id), WEEK(MONDAY)) AS first_week, DATE_TRUNC(event_date, WEEK(MONDAY)) AS event_week FROM base ) ), user_counts AS ( SELECT diff_of_week, COUNT(DISTINCT user_pseudo_id) AS user_cnt FROM first_week_and_diff GROUP BY diff_of_week ORDER BY diff_of_week ) SELECT *, ROUND(SAFE_DIVIDE(user_cnt, first_week_user_cnt),3) AS retention_rate FROM( SELECT diff_of_week, user_cnt, FIRST_VALUE(user_cnt) OVER(ORDER BY diff_of_week) AS first_week_user_cnt FROM user_counts ) # Monthly Retention 쿼리 WITH base AS( SELECT DISTINCT user_id, user_pseudo_id, event_name, DATE(DATETIME(TIMESTAMP_MICROS(event_timestamp), 'Asia/Seoul')) AS event_date, DATETIME(TIMESTAMP_MICROS(event_timestamp), 'Asia/Seoul') AS event_datetime FROM advanced.app_logs WHERE event_date BETWEEN "2022-08-01" AND "2022-11-03" ),first_month_and_diff AS ( SELECT *, DATE_DIFF(event_month, first_month, MONTH) AS diff_of_month FROM ( SELECT DISTINCT user_pseudo_id, DATE_TRUNC(MIN(event_date) OVER(PARTITION BY user_pseudo_id), MONTH) AS first_month, DATE_TRUNC(event_date, MONTH) AS event_month FROM base ) ), user_counts AS ( SELECT diff_of_month, COUNT(DISTINCT user_pseudo_id) AS user_cnt FROM first_month_and_diff GROUP BY diff_of_month ORDER BY diff_of_month ) SELECT *, ROUND(SAFE_DIVIDE(user_cnt, first_month_user_cnt),3) AS retention_rate FROM( SELECT diff_of_month, user_cnt, FIRST_VALUE(user_cnt) OVER(ORDER BY diff_of_month) AS first_month_user_cnt FROM user_counts )
가장 쉽고 깊게 알려주는 MongoDB 완벽 가이드 [ By. 비전공자 & Kakao 개발자 ]
MongoDB 설명에서 "BSON(Binary JSON)이라 효율적이고 더 많은 데이터 타입을 지원한다" 고 언급하신 부분에 대해 질문드립니다. 결국 Redis나 MySQL 같은 RDB도 내부적으로는 데이터를 바이너리 형태로 저장하지 않나요? 모두 바이너리로 저장하는데, 왜 MongoDB만 특별히 "바이너리라서 효율적이고 타입을 많이 지원한다"고 강조하는지 잘 이해가 안 됩니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 혹시 초급이랑 중급은 수업 자료 따로 pdf 파일 없는 걸까요?
카일스쿨님 안녕하세요, 사용자 VoC 나 SNS 등의 정성 데이터를 모아서 분석하는 방법이 있을까요? 데이터 분석 관련해서는 아직 기초적인 지식도 없다보니 정성 데이터는 어떤 방법으로 분석하는지, 어떤 방법이 가장 효과적일지 궁금합니다! (정성 데이터를 분석해서 문제 정의의 근거로 사용하려는 목적입니다. SQL 초급 강의는 아직 수강 전입니다 🥹)
해당 API 경로( GET /english/images/hm_ligne4_col4.gif HTTP/1.0 )에 대한 요청 중, 400번대 응답 코드(클라이언트 오류)에 해당하는 실패 로그만 집계하고자 할 때, 아래와 같은 쿼리로 해당 조건을 만족하는 로그를 정확하게 조회하고 집계할 수 있을까요? SQL table limit=10 wc | search request == "GET /english/images/hm_ligne4_col4.gif HTTP/1.0" | search status >= 400 and status < 500
안녕하세요. 열심히 강의 듣고 있는 수강생 입니다. part1에 이어 part2 수강 중인데 동영상과 올려주신 책자 참고해서 도커설치 오라클 설치를 완료하고 DBeaver 연결을 하는데 다음과 같이 오류 메세지가 나와서 문의 드립니다. 새데이터베이스 연결 에 정보를 입력하고 완료를 누르면 아래와 같은 오류 메세지가 뜹니다. ORA-12541: 데이터베이스에 접속할 수 없습니다. %s에 리스너가 없습니다. (CONNECTION_ID=f7QamODkSR2oA/kGFTXp/Q==) 2~3번 반복해서 진행해 봤는데 같은 오류가 나오네요. 혹시 제가 설치 및 연결시 잘못한게 있을까요??
안녕하세요! 현재도 최종과제 피드백을 해주시는지 잘 모르겠으나,, 피드백 받아보고 싶어서, 최종 과제 제출해보겠습니다! 3번 문제에서는 특히 생각처럼 인사이트가 안나와서 어려웠습니다.. ㅎㅎ https://www.notion.so/Foodie-express-SQL-223249eb444480eca214ed420d3699a4?source=copy_link
안녕하세요. 관련 강의를 시청하던 중, 궁금한 점이 있어 문의드립니다. 현재 회사에서는 Oracle E-Business Suite(EBS)를 사용 중이며, 대부분의 비즈니스 로직이 PL/SQL 기반으로 구성되어 있습니다. 이와 별개로, Java(Spring) 기반으로 자체 개발한 ERP 시스템도 운영 중이며, 이 시스템에서는 EBS에서 사용 중인 PL/SQL 프로시저들을 직접 호출하여 사용하고 있습니다. 문제는 이 과정에서 트랜잭션 정합성에 문제가 발생하는 경우가 있다는 점입니다. 예를 들어, EBS의 PL/SQL 프로시저 내부에서 COMMIT을 수행하는 구조이다 보니, Java에서 여러 프로시저를 하나의 트랜잭션 안에서 호출하더라도, 중간에 커밋이 되어버려 정합성이 깨지는 상황이 발생하고 있습니다. 이러한 구조적인 상황에서, 실무에서는 일반적으로 어떤 방식으로 트랜잭션 정합성을 유지하거나 해결하는지 궁금합니다.