수료증 제공하나요?
미해결
김영한의 실전 데이터베이스 입문 - 모든 IT인을 위한 SQL 첫걸음(SQL부터 차근차근)
이 강의 다 듣고나면 수료증 주나요? 입문편, 기본편 모두 완강하면 수료증 주는지 궁금합니다.
- sql
- mysql
- dbms/rdbms
- SQLD
176만명의 커뮤니티!! 함께 토론해봐요.
미해결
김영한의 실전 데이터베이스 입문 - 모든 IT인을 위한 SQL 첫걸음(SQL부터 차근차근)
이 강의 다 듣고나면 수료증 주나요? 입문편, 기본편 모두 완강하면 수료증 주는지 궁금합니다.
미해결
실습으로 손에 잡히는 SQLD(2과목)
노션 링크가 어디에 있을까요??
미해결
김영한의 실전 데이터베이스 - 성능 최적화, 실행 계획과 인덱스 완전 정복
1. 인덱스로 이미 5~8행까지 좁혀진 결과를 정렬하는 경우에도 filesort를 주의해야 하나요? 2. 실무에서 "이 정도면 filesort를 신경 쓰지 않아도 된다"고 판단하는 기준(정렬 대상 행 수, 실행 시간 등)이 있다면 알려주시면 감사하겠습니다. 감사합니다.
미해결
SQLD 자격대비 과정
S3에 " 날짜(SYSDATE)의 경우 VARCHAR2 타입의 날짜 컬럼에 입력 시 TO_CHAR(SYSDATE, 'YYYYMMDD')와 같이 변환 후 입력값으로 사용해야 함. D" 라는 부분은 빈드시 그래야 한다는 오해의 소지가 있는 거 같습니다. 날짜 정보를 VARCHAR2 타입으로 관리하는 컬럼일 경우 반드시 TO_CHAR(SYSDATE, FORMAT)으로 캐스팅 해야 하지만 DATETIME 타입의 컬럼에는 캐스팅 하지 않아도 입력이 되나깐요.
미해결
SQLD 자격대비 과정
테이블 생성 시 PROD_ID가 PK라면 PROD_ID VARCHAR2(10) NOT NULL 에서 NOT NULL을 생략해도 되지 않나요 ?
미해결
SQLD 자격대비 과정
문제 풀이 S3에서 TCL을 Tool Command Language 라고 해석이 되어 있는데 DB에서의 TCL은 Transaction Control Language가 맞지 않나요 ? TCL을 Tool Command Language는 개발영역에서 사용하는 개념인 것 같아서요
미해결
김영한의 실전 데이터베이스 - 성능 최적화, 실행 계획과 인덱스 완전 정복
질문이 있습니다 강의를 듣다보니 UUID를 써야겠다면 PK를 오토 인크리먼트 UNIQUE 를 UUID로 사용하라고 했는데 , 그리고 보안적인 측면으로 이야기하면서 오토인크리먼트는 유추 될수 있다 라고 하시면서 그러면 보안을 더 잘하는게 맞지 않냐는 말씀을 하셨습니다. 저도 말씀하신 생각과 같은데요 그런데 만약에 UUID와 오토 인크리먼트를 같이 쓰게되면 PK 값을 안보여주는 것도 이야기를 하셨는데 그러면 SELECT할때 WHERE 조건으로 UUID 즉 유니크 키를 사용하면 PK를 사용할때에 비해 이점이 줄지않나요? 그리고 문서 건수가 많아질수록 유니크 키 인덱스 부분도 쌓여서 비용이 쌓일거같은데 이부분이 궁금합니다.
해결됨
SQLD 자격대비 과정
본질이 업무에 의해 생성되는 것이라면 사실 이해가 잘 되지 않습니다. 업무라는 것이 조직의 목표 수행을 위해 이루어 지는 모든 행위라고 보면 사원번호 + 주문일자 + 순번 으로 구성된 주문번호도 업무 수행 즉 업무 관리를 위해 만든 식별자라고 생각할 수 있는게 아닌가 해서요 ? 만약 주문번호를 오라클 시퀀스같이 하나의 숫자로만 구성시키면 본질식별자가 되는 건가요 ?
미해결
김영한의 실전 데이터베이스 - 성능 최적화, 실행 계획과 인덱스 완전 정복
안녕하세요 질문이 있습니다. b+트리 강의를 들으면서 문득 생각이 나서 질문드립니다.웹개발을 하는 회사원인데요 저희 회사에서는 pk를 랜덤 UUID를 사용해서 pk를 사용하고 있는데 프로젝트를 하면 마이그레이션을 하거나 할떄 꽤 많은 양을 합니다 수십만건 또는 수백만건 정도를 하는데 이 pk를 auto increment로만 바꿔도 성능이 많이 개선이 되나요?
해결됨
SQLD 자격대비 과정
슈퍼키는 최소성을 만족하지 않아야 하는데 사번이나 주민번호 하나를 슈퍼키라고 할 수 있나요 ?
해결됨
[백문이불여일타] 데이터 분석을 위한 중급 SQL
where 절에서 where l1.num = 12.num and l2.num = l3.num 이 아닌 where l1.num = l2.num = l3.num 은 실행이 안되는 이유가 무엇일까요?
해결됨
BigQuery(SQL) 활용편(퍼널 분석, 리텐션 분석)
안녕하세요! 데이터 분석가를 희망하는 학생입니다. 유튜브부터 시작해서 BigQuery 입문, 활용편 정말 많은 도움이 되고 있습니다. https://app.notion.com/p/3-13-3f36fc83bdc1804cb3b7cb1f47c909cb?source=copy_link 과제 완료하여 노션 링크 첨부합니다! 2, 3번의 경우 일부 AI의 도움을 받았습니다. 피드백 해주시면 정말 감사하겠습니다~
미해결
김영한의 실전 데이터베이스 - 성능 최적화, 실행 계획과 인덱스 완전 정복
eXPLAIN ANALYZE SELECT m.member_name, o.total _price FROM orders o JOIN member m ON m.member_id = o.member_id; 위쿼리를 시작했는데 거의 수분 5분이 넘어도 결과가 나오는데 너무 오래 걸립니다. Nested loop inner join (cost=5.85e+6 rows=4.86e+6) (actual time=2.89..446250 rows=5e+6 loops=1) -> Table scan on o (cost=503796 rows=4.86e+6) (actual time=0.77..3714 rows=5e+6 loops=1) -> Single-row index lookup on m using PRIMARY (member_id=o.member_id) (cost=1 rows=1) (actual time=0.0882..0.0882 rows=1 loops=5e+6) 위는 실행 계획으로 약7분 26초가 걸렸습니다. 그리고 데이터 넣을떄도 orders부분도 한 한시간 넘게 걸렷던거 같습니다. 강의를 듣고싶은데 이부분은 그냥 오래걸리면 넘어가도 될까요? 컴퓨터 사양도 그렇게 나쁘지않습니다 32gb램을쓰고 있는데 뭔가 강의를 계속해서 듣고 싶은데 이런거 하나하나 막힐때마다 너무 오래걸려서 어떻게 해야될지를 모르겠습니다.
미해결
데이터와사람들과 함께하는 SQLP 자격대비반 : 연봉 2배 올리기
안녕하세요 대장님 온라인으로 뵈니 정말 반갑네요. 다름 아니라 3강 1-1 인덱스 구조 부분의 강의 자료가 없습니다. 확인 부탁드립니다.
미해결
김영한의 실전 데이터베이스 - 기본편
문제를 풀면서 66. 인덱스 설계 가이드 라인 에서 카디널리티 이야기가 나왔던게 생각이 났습니다. is_active는 값이 TRUE/FALSE 2개이므로 카디널리티가 낮을거라(중복도 높음) 생각했습니다. 그리하여 문제에서 주어진 쿼리를 보고 중간에서 is_active에서 풀 스캔 VS is_active 컬럼도 인덱스에 추가할지 고민이 되었습니다. 정답처럼 인덱스에 추가해주는게 더 나은 선택인걸까요? 음... 때에 따라 다른거 같기도 합니다! TRUE/FALSE의 비율 같은게 추가 조건으로 나왔더라면 선택하기 더 좋았을 거 같네요. 예를 들어, TRUE의 비율이 95% 다 이러면 인덱스를 달아주는 것과 풀 스캔이 별 차이가 없었을 거 같다는 생각이 드네요!
미해결
김영한의 실전 데이터베이스 - 설계 2편, 실무에서 반드시 마주치는 9가지 설계 패턴
안녕하십니까! 덕분에 수업 잘 듣고 있습니다! 쿼리를 쉽고 가독성 좋게 설계하면서 추가 비용이 드는 형태가 많이 보이는데 제가 실제 실무를 겪어보진 않았지만 직감적으로 느끼는 부분이 있습니다! LLM이 발전하면서 쿼리에 대한 작성 난이도가 낮아졌을거라고 예상하고 시간이 지날수록 이런 부분이 더 빠르게 발전될 것이라고 생각합니다! 그럼 쿼리 작성에 대한 비용이 낮아지면서 0에 가까워질 거 같은데 그럼에도 기존 소프트웨어 개발 실무에서 적용된 "쉬운 쿼리, 조금의 추가 비용"의 형태가 유지될까요?! 아니면 실제로 이러한 부분이 현업에서도 반영이 되고 있나요? 비즈니스 의도, 집단 환경에 따라 다르겠지만 영한님의 시선으로도 의견이 궁금해서 질문드립니다!
미해결
김영한의 실전 데이터베이스 - 성능 최적화, 실행 계획과 인덱스 완전 정복
궁금한게 key_length 를 이용해서 어떻게 사용하는지에 대해서가 22강에서 안나왔는데 그 이후로 나오나요? key_len 이 기대한것보다 적으면 인덱스가 잘 사용되고 있지 않다고만 설명을 하고 지나가셨는데 이후에 key_len 값을가지고 개선 하는방법이 나오는지 알고싶습니다.
해결됨
BigQuery(SQL) 활용편(퍼널 분석, 리텐션 분석)
안녕하세요. 강의 마지막 부분의 피벗 과제 올려봅니다. 감사합니다.! WITH base AS( SELECT user_id, event_date, event_name, event_timestamp, user_pseudo_id, MAX(IF(ep.key = "firebase_screen",ep.value.string_value,NULL)) AS firebase_screen, MAX(IF(ep.key = "food_id",ep.value.int_value,NULL)) AS food_id, MAX(IF(ep.key = "session_id",ep.value.string_value,NULL)) AS session_id FROM advanced.app_logs CROSS JOIN UNNEST(event_params) AS ep WHERE event_date BETWEEN "2022-08-01" AND "2022-08-18" GROUP BY ALL ), filter_event_name_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") ) SELECT * EXCEPT (step_number, event_name_with_screen,cnt), 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 ( 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(user_pseudo_id) AS cnt FROM filter_event_name_screen GROUP BY ALL HAVING step_number IS NOT NULL --ORDER BY step_number ) GROUP BY ALL ORDER BY event_date
해결됨
BigQuery(SQL) 활용편(퍼널 분석, 리텐션 분석)
안녕하세요! 강의 보다 궁금한 점이 생겨서 질문합니다. 집계할 때 COUNT(user_id) 가 아니라 COUNT(DISTINCT user_pseudo_id)를 사용하는 이유는 무엇인가요? (COUNT(user_id) 했을 때의 결과) 좋은 강의 제공해주셔서 감사합니다. 질문을 남겨주실 때 아래 부분을 같이 남겨주시면 더 빠르게 상황을 파악하고 답변드릴 수 있어요 🙂 어떤 강의를 들으면서 발생했나요?17.1-9 어떤 문제가 생겼나요? 어떤 시도를 해보셨나요? 어떤 쿼리를 사용했나요? 환경이 어떻게 되나요?(윈도우, 맥 중 택1, 크롬 같은 웹브라우저 환경)
미해결
실습으로 손에 잡히는 SQLD(2과목)
제대로 된 노션 링크 부탁 드립니다. no found에요... 요약본 프린트해서 체크하면서 공부하려는데 ....ㅡㅡ;;