inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

176만명의 커뮤니티!! 함께 토론해봐요.

파티셔닝 시, 데이터 크기가 0B가 됩니다!

해결됨

BigQuery(SQL) 활용편(퍼널 분석, 리텐션 분석)

안녕하세요. 빅쿼리를 좀 더 공부하고 싶어, 강의를 결제하게 되었습니다. 다름이 아니라, app_logs_temp 데이터를 강의에서 알려준대로, upload 하고 테이블을 만들었을 떄는 정상적으로, 잘 표시가 되는데요, 문제는 event_date 를 기준으로 (날짜 기반 파티셔닝)을 했을 때, 데이터가 0B가 되는 문제가 발생합니다! Array, Struct 문제에서 4번 문제를 풀때, "데이터를 표시할 수 없다" 라는 말이 있어서, 왜 이럴까.. 하다가, 발견하게 되었어요.. 저는 이미 예전에 빅쿼리를 사용해본 적이 있어서, billing account 계정이 모두 연결된 상태이구요. chatgpt 말로는 이 방법도 안된다면, 빈 파티셔닝 테이블 만들어 놓고 INSERT INTO로 하나하나 데이터 넣으라는데... 예전에 프로젝트 할 때, 이 방법으로 했다가 돈이 꽤 나와서요.. 어떻게 해야할까요?

  • sql
  • Google-Analytics
  • firebase
  • google-sheets
  • bigquery
minsubrother 댓글 3 좋아요 0 조회수 310

5-6 1번 문제

해결됨

초보자를 위한 BigQuery(SQL) 입문

안녕하세요. where에 조건을 걸기 전에 조인하고 한번 해봤는데 결과 갯수가 차이가 있습니다. 어떤 부분 때문에 이런 차이가 발생할까요?

  • sql
  • bigquery
  • 데이터-리터러시
Malibu 댓글 1 좋아요 0 조회수 169

주석처리 -- 빠르게 입력하는 방법(?)

해결됨

초보자를 위한 BigQuery(SQL) 입문

카일님의 강의 잘 듣고 있습니다! 2가지 질문이 있습니다! 1번 질문) 카일님이 강의를 하시면서 주석처리를 되게 빠르게 실행하시는 것 같으신데, 혹시 팁을 공유해주실 수 있으실까요? -- 를 매번 입력하시는 것인가요?! 2번 질문) 5-6강의 11분 49초에서 쿼리를 빠르게 주석처리하기 위해서 앞에서 true인 1=1을 넣고, and쓰고 빠르게 주석처리..이 부분이 이해가 안됩니다.. 1=1을 넣는 것과 and에 주석처리를 거는 것과 무슨 연관이 있는 건가요? 좋은 강의 늘 감사합니다!

  • sql
  • bigquery
  • 데이터-리터러시
yjjin2854 댓글 2 좋아요 0 조회수 329

4-7 5번 '이후'

해결됨

초보자를 위한 BigQuery(SQL) 입문

카일님~ 혹시 5번 문제의 '이후'가 사전적으로는 기준이 되는 때도 포함이 되어서 >=로 작성이 되어야 할 것 같은데, 강의에서는 >로 작성하셨더라구요.. 혹시 이렇게 작성하신 다른 이유가 있으신지 궁금합니다..! 감사합니다 :)

  • sql
  • bigquery
  • 데이터-리터러시
sapienslee 댓글 1 좋아요 0 조회수 175

4-7 3번 BETWEEN의 범위

해결됨

초보자를 위한 BigQuery(SQL) 입문

카일님 안녕하세요 :) 4-7 3번 문제에서 BETWEEN을 사용해주셨는데 mysql에서의 BETWEEN 범위는 이상, 이하라고 하는데 혹시 bigquery는 그 포함 관계가 다른걸까요? 301에서 500 사이면 BETWEEN 301 AND 500 이어야 할 것 같은데 300으로 작성하신 이유가 궁금합니다. 나름대로 검증해보려고 total=301인 데이터를 뽑아보려했는데 pokemon 데이터에는 포함 안되어 있더라구요..ㅎㅎㅠ 그리고 제가 3일 정도 뒤에 갑작스레 SQL 코딩테스트를 보게 되어 벼락치기를 해야하는 상황인데 카일님의 SQL 개념+문풀 JOIN까지 듣고 프로그래머스 고득점 Kit로 문풀을 하면될지.. 시간이 넘 촉박해서 다 할 수 있을지는 모르겠는데 혹시 좀더 효율적인 공부 방향이나 팁이 있다면 추천 부탁드려도 될까요?ㅠㅠ 항상 선한 영향력 감사합니다!!

  • sql
  • bigquery
  • 데이터-리터러시
sapienslee 댓글 1 좋아요 0 조회수 228

안녕하세요

해결됨

초보자를 위한 BigQuery(SQL) 입문

강의 너무 잘 듣고 있습니다. 혹시 활용편은 언제쯤 출시될 예정일까요?

  • sql
  • bigquery
  • 데이터-리터러시
Malibu 댓글 1 좋아요 0 조회수 190

battle 미리보기 업로드 오류

해결됨

초보자를 위한 BigQuery(SQL) 입문

안녕하세요 카일님~battle 데이터를 업로드하고 말씀해주신 설정을 똑같이 적용했는데 미리보기에서 데이터가 보이지 않고, 쿼리의 FROM으로 불러와도 '표시할 데이터가 없습니다'라고 뜹니다 혹시 관련해서 도움을 구할 수 있을까요?ㅠㅠ 그리고 강의 너무너무 잘 보고 있습니다.. 최곱니다 너무 감사드려요ㅎㅎ (해결 완료) 아래 게시글에서 '빌링 어카운트(결제 계좌)' 연결 후에 문제 해결되셨다고 하셨습니다. 저는 '엇? 나는 지금 결제 계좌 연결되어있는데..?'라고 잠시 생각했으나 다시 되짚어보니 제가 basic 데이터셋을 초반에 만들고, 그 이후에 결제 계좌를 연결했을 수도 있을 것 같아요 그래서 저는 basic2 데이터셋을 새로 생성해서 battle 테이블을 생성해보니 정상적으로 진행되는 것을 확인했습니다! 요약하면 '결제 계좌 연결 => 데이터셋(basic) 생성 => battle 테이블 생성' 순서가 반드시 지켜져야 오류없이 진행되는 것 같습니다ㅠㅠ 원인을 알게 되어 정말 다행이고, 공유해주셔서 감사합니다 :) https://www.inflearn.com/questions/1250442/battle-%ED%85%8C%EC%9D%B4%EB%B8%94-%ED%98%95%EC%84%B1%ED%95%A0-%EB%95%8C-%EC%A0%9C%EA%B0%80-%EC%96%B4%EB%96%A4-%EC%8B%A4%EC%88%98%EB%A5%BC-%ED%96%88%EC%9D%84%EA%B9%8C%EC%9A%94

  • sql
  • bigquery
  • 데이터-리터러시
sapienslee 댓글 2 좋아요 0 조회수 440

파일 업로드 오류와 관련해서 재질문 합니다.

해결됨

초보자를 위한 BigQuery(SQL) 입문

질문 드렸던 이전 게시글 ▶ https://www.inflearn.com/questions/1229720/pokemon-%ED%85%8C%EC%9D%B4%EB%B8%94%EC%9D%84-%EC%83%9D%EC%84%B1%ED%95%98%EA%B3%A0%EC%9E%90-%ED%95%98%EB%8A%94%EB%8D%B0-%EB%9C%A8%EB%8A%94-%EC%98%A4%EB%A5%98?re_comment_id=349352 = 구글 드라이브에 파일을 업로드 한 후 공유 드립니다. https://drive.google.com/file/d/1Z8y2eJSlwfYEexaxyAan7Rt3xPrJtznE/view?usp=sharing

  • sql
  • bigquery
  • 데이터-리터러시
레스 댓글 1 좋아요 0 조회수 205

Espanso 실행 문제 해결

해결됨

초보자를 위한 BigQuery(SQL) 입문

안녕하세요. 수업 유익하게 잘 듣고 있습니다! Espanso를 다운받아서 설정해봤는데요! 텍스트 편집기에서 수정까지 되었고, espanso 프로그램에서 open search bar 를 눌러봤을 때 첨부드린 이미지처럼 :sql 이 잘 들어가 있습니다. 그런데 :sql 과 같은 trigger 단어를 입력해도 변하지 않아서 어떤 다른 해결 방법이 있을지 문의드립니다. 혹시 espanso의 설정 수정까지는 잘 되었으나, espanso가 어떤 권한 문제로 적용이 안될 수도 있나요? 추가로 시도해볼만한 방법이 있다면 안내 부탁드립니다. 감사합니다!

  • sql
  • bigquery
  • 데이터-리터러시
sunzy9 댓글 1 좋아요 0 조회수 383

활용편 급합니다.....

해결됨

초보자를 위한 BigQuery(SQL) 입문

활용편 언제 나오나요 급합니다.... 빨리 내놓으십쇼.. 유료로 내주셔도 긁겠습니다

  • sql
  • bigquery
  • 데이터-리터러시
homebrew1 댓글 1 좋아요 2 조회수 328

오류

해결됨

초보자를 위한 BigQuery(SQL) 입문

다음과 같이 실행했는데 오류가 뜨는데, 이유가 무엇일까요? SELECT * IF(speed >= 70, "빠름", "느림") AS Speed_Category FROM `inflearn-bigquery-practice.basic.pokemon` Syntax error: Expected end of input but got keyword IF at [3:3]

  • sql
  • bigquery
  • 데이터-리터러시
98jm0508 댓글 1 좋아요 0 조회수 222

총 정리 문제 풀이 5번에 관해 질문

해결됨

초보자를 위한 BigQuery(SQL) 입문

안녕하세요. 총 정리 문제 풀이 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 순서 차이의 영향 유무에 대해서만 답해 주셔도 감사하겠습니다. 미리 감사합니다.

  • sql
  • bigquery
  • 데이터-리터러시
박갑순님 댓글 2 좋아요 0 조회수 282

빅쿼리 테이블 만들기 오류

해결됨

SQL 시작도 못한 분들 드루와요

안녕하세요. 현재 sql 강좌 수강 중에 빅쿼리 테이블 만들기가 오류가 떠서 질문드립니다. 업로드 할 csv 파일은 압축풀고 여러번 업로드 했으나 충돌이 많이 된다고 테이블 생성이 되지 않습니다. csv 파일 자체에 들어가보니, max os ~ 라고 되어 있던데 저는 윈도우 사용자인데 이때 어떻게 오류 해결 해야 하나요? ** 에러 메세지와 이미지 캡쳐본 >> Error while reading data, error message: CSV processing encountered too many errors, giving up. Rows: 0; errors: 1; max bad: 0; error percent: 0

  • sql
  • bigquery
lee 댓글 1 좋아요 1 조회수 603

4-7. 조건문 연습 문제 5번에 관한 질문

해결됨

초보자를 위한 BigQuery(SQL) 입문

안녕하세요. 조건문 연습 문제 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` 미리 감사합니다.

  • sql
  • bigquery
  • 데이터-리터러시
박갑순님 댓글 2 좋아요 0 조회수 277

4-5. 연습 문제 1번의 정답에 관해 질문

해결됨

초보자를 위한 BigQuery(SQL) 입문

안녕하세요, 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회로 줄어버리지 않을까 생각되는데, 잘못된 곳이 있다면 짚어주셨으면 합니다. 미리 감사합니다.

  • sql
  • bigquery
  • 데이터-리터러시
박갑순님 댓글 2 좋아요 1 조회수 341

as 명명, count 함수 내 변수 선택에 관한 질문

해결됨

초보자를 위한 BigQuery(SQL) 입문

안녕하세요. 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 열)을 쓰는 것이 잘못된 집계를 피하기 위함이라고 이해해도 될까요? 글이 길어졌지만, 답변을 기다립니다. 미리 감사합니다.

  • sql
  • bigquery
  • 데이터-리터러시
박갑순님 댓글 2 좋아요 0 조회수 333

쿼리 환경설정 오류

해결됨

초보자를 위한 BigQuery(SQL) 입문

안녕하세요! SELECT (들여쓰기)* FROM 'basic.pokemon' ORDER BY id 와 같이 쿼리를 작성하였는데, 저런 오류가 나는 이유가 무엇일까요...?

  • sql
  • bigquery
  • 데이터-리터러시
hb981224 댓글 1 좋아요 0 조회수 241

Espanso 설치시 지속적으로 에러가 나서 문의드립니다.

해결됨

초보자를 위한 BigQuery(SQL) 입문

안녕하세요! Espanso 를 윈도우 버전으로 다운로드해서 설치하려고하는데 지속적으로 하기 에러가 나고있습니다. 혹시 제가 뭔가 잘못설치한건지 확인 한번 부탁드립니다!

  • sql
  • bigquery
  • 데이터-리터러시
룰루비데 댓글 1 좋아요 0 조회수 391

WITH 구문

해결됨

초보자를 위한 BigQuery(SQL) 입문

1. WITH 사용하지 않고 FROM으로 묶은 후 쿼리 작성 이어나가기 2. WITH 사용하기 안녕하세요. 위의 두 경우 모두 쿼리 결과는 동일하게 나오는데, WITH를 사용하는 정확한 이유가 오로지 가독성을 위한 것인지, 용량에도 차이가 생기는 것인지 궁금해 질문드립니다. (개인적으로는 문제를 풀 때 바로 묶는 것이 더 편하기 때문에 여쭤봅니다.!)

  • sql
  • bigquery
  • 데이터-리터러시
mini0529 댓글 1 좋아요 0 조회수 222

JOIN 연습문제 5번 문제 관련해서 질문이 있습니다!

해결됨

초보자를 위한 BigQuery(SQL) 입문

안녕하세요! 좋은 강의 감사드립니다. 도움이 많이 되고 있어요. 5번 문제 관련해서 질문이 있습니다. 5번 문제에 대해서 저는 쿼리를 이렇게 작성했습니다. SELECT generation, COUNT(tp.id) AS pokemon_cnt FROM ( SELECT id, trainer_id, pokemon_id, status FROM `basic.trainer-pokemon` ) AS tp LEFT JOIN basic.trainer AS t ON tp.trainer_id = t.id LEFT JOIN basic.pokemon AS p ON tp.pokemon_id = p.id WHERE t.hometown = 'Incheon' AND tp.status IN ('Active', 'Training') GROUP BY generation ORDER BY pokemon_cnt DESC 강의에서 카일님과 다른 부분은 WHERE 절에 AND 가 더 추가된 부분이에요. 문제에서 '보유하고 있나요?' 라고 물어서 저는 저 조건을 추가해줬는데 카일님은 추가해주시지 않았는데도 제 쿼리와 결과가 같게 나오더라구요. 우연히 인천에 있는 트레이너들의 status가 다 Active, Training 이어서 이렇게 된 것인지 아니면 저 조건이 필요가 없는 것인지 궁금합니당!

  • sql
  • bigquery
  • 데이터-리터러시
비가싫어요 댓글 2 좋아요 0 조회수 297

인기 태그

인프런 TOP Writers

주간 인기글