묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 실전 데이터베이스 - 설계 2편, 실무에서 반드시 마주치는 9가지 설계 패턴
히스토리 관련 질문
안녕하세요. 히스토리 테이블 관련해서 질문이 있습니다. 원본테이블에 업데이트 이유를 트랙킹할 필요가 있으면 변경 사유 컬럼들을 추가하라고 말씀주셨는데 생성, 수정, 삭제시 모두 히스토리 테이블에 스냅샷형태로 저장한다면 변경 사유 컬럼들은 히스토리 테이블에만 있는게 좋지 않을까 싶어서 질문드립니다.
-
해결됨실습으로 손에 잡히는 SQLD(2과목)
제공된 홈페이지 로그인 ,출력값, 건의사항 오류
맥북 유저입니다.이전 글에 저와 동일한 문제를 겪으신 분이 Q&A 적은걸 확인하였습니다. 로그인이 안되는데 기능자체가 오류가뜹니다. 즉 구글아이디 연동하려고 하여도 되지않고 개인 이메일로 로그인하려해도 되지않습니다. 코드 출력 역시 안되고 있으며 해당 부분들을 건의사항에 적으려고해도 건의사항도 작성이안됩니다.
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
진짜 강의 듣는거 너무 고문
대충 빨리 듣고 필요한것만 정리 하고 넘어가고 싶은데 어렵고 지루하고 졸리고
-
미해결실습으로 손에 잡히는 SQLD(2과목)
로그인이 안되네요
땃지님이 올려주신 SQL학습창 로그인이 안되네요. 어떻게 해야하나요?
-
해결됨김영한의 실전 데이터베이스 입문 - 모든 IT인을 위한 SQL 첫걸음(SQL부터 차근차근)
교재 p.31 실행순서 오류?
안녕하세요. sum과 같은 집계함수를 나중에 select 에서 계산한다는 부분이 교재에 조금 헷갈리게 되어있는거 같아서요. 그러니까 sum, count 같은부분은 이미 group by 하고 난다음 select전에 집계함수가 미리 구해진 걸로 ai로 공부하다가 찾아보면서 알게되어서요.. 그렇게 미리 구해진 집계함수가 having이나 select에서 사용되는 거지 select 절에서 계산되는게 아니라고 알게 되었어요. 그거 때문에 성능도 빠른거라고.. 그런데 교재 7. 집계와 그룹핑에 p. 31에 보면 5번 select 절이 실행될때 집계함수 계산이 여기에 이루어진다고 나와있습니다. 수정이 필요한게 아닌가 싶습니다. 아.. 그래서 group by 가 없는 경우와도 헷갈렸었는데 그 경우도 select에서 집계함수가 계산된다기 보다 group by가 없어도 전체 데이터가 하나의 데이터로 implicit grouping으로 select 전에 계산되어지고 select에서는 보여주는 것만 관여하는게 되어서 흐름이 맞춰지더라구요... 개인적으로.. 공식문서에 https://dev.mysql.com/doc/refman/8.0/en/aggregate-functions.html"This section describes aggregate functions that operate on sets of values"
-
미해결[2026] 비전공자도 한 번에 합격하는 SQLD 올인원
제 3정규화 관련 질문
아래 빨간색 박스에 해당하는 내용이 이해가 되지 않아서 여쭤봅니다. 아래 과목 테이블을 보시면, 과목명 (미적분)을 알아도 담당교수가 홍길동인지 나적분인지 모르는데 , A -> B 함수 종속이 어떻게 이루어지는건지 모르겠습니다.
-
미해결김영한의 실전 데이터베이스 - 설계 2편, 실무에서 반드시 마주치는 9가지 설계 패턴
통계 데이터 수정 질문
안녕하세요, 좋은 강의 만들어주셔서 정말 감사합니다!!이번에 신규 기능을 추가하면서 통계 데이터도 필요한 상황인데 통계 데이터에 사용되는 원본 데이터가 수정되는 케이스는 어떻게 설계하는게 좋을지 조언을 구하고자 질문드립니다.통계 데이터는 유저가 조회하고, 데이터 조회 기간은 최근 7일/최근 한달/과거 한달(사용자 조정 가능)로 조정이 가능하고, 한 화면에 4가지 유형의 통계 데이터를 제공해야 해서 이를 위해 일별 통계 테이블을 사용하려고 했는데요.그런데 원본 데이터가 언제든 수정되거나 추가될 수 있는 상황입니다.그래서 수정한 사용자와 수정 일자를 따로 모아 배치를 돌리는 방향이 생각났는데 이렇게 설계해본 경험이 없어,우선은 실시간 증분 업데이트를 진행하고 데이터 정확성이 필요해지는 상황이 필요하다면 그때 위와 같은 배치를 돌리는게 나을지 또는 다른 방향이 있을지 궁금하여 질문드립니다.정산 데이터는 아니기 때문에 멱등성이 깨질 수 있는 상황은 감안하고, 기획 요구사항인 실시간성을 반영하는게 좋을지도 고민이 되어 질문드립니다!
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
28강 sql 파일 어딨나여?
28강 sql 파일 어딨나여?
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
2NF의 엄밀한 정의
2NF를 충족하기 위한 조건은 다음과 같은 것으로 알고 있습니다.제1 정규형을 만족하고,모든 컬럼이 후보 키 전체에 완전 함수 종속되어야 한다. 예를 들어 수강 테이블의 컬럼이 다음과 같다고 할 때,id: PK [대리 키]student_id: UK1 [자연 키]course_id: UK1 [자연 키]student_name [일반 컬럼]후보 키:id [기본 키 - 단일 후보 키](student_id, course_id) [대체 키 - 복합 후보 키] (student_id, course_id)는 복합 후보 키이고,student_id -> student_name (부분 함수 종속)이므로 2NF에 위배되지 않나요?따라서 대리 키만 써도 2NF에 위배되는 일이 발생할 수 있다고 생각합니다. 아니면, 실무에서는 2NF의 정의를 기본 키에만 한정하여 2NF를 만족하는 것으로 보나요?
-
미해결김영한의 실전 데이터베이스 - 설계 2편, 실무에서 반드시 마주치는 9가지 설계 패턴
공통 코드에서 Redis Pub/Sub은 최근 실무에서 쓰이진 않나요?
Redis Pub/Sub 구독을 통해 Redis 갱신 시 Sub로 구독 중인 각 서버에 캐시 무효화 및 강제 갱신 시키는 구조는 잘 안쓰이나요?이 방법도 네트워크 순단 시 fire and forget, 구현 복잡도가 높음 등의 문제가 있긴한데 실무에서는 Pub/Sub을 잘 안쓰는지 궁금합니다.
-
미해결김영한의 실전 데이터베이스 - 설계 2편, 실무에서 반드시 마주치는 9가지 설계 패턴
DELETE -> SELECT 질문 드립니다.
안녕하세요 단건데이터(ex: 로그) 처리의 경우에는 크게 고민하지 않고 MERGE를 사용하여 처리하고 있습니다. 하지만 10~20건 이상의 데이터셋이 들어오는 경우에는 어떤 방식으로 처리하는 것이 더 적절한지 고민이 되어 질문드립니다. 데이터 DELETE -> INSERT 2번의 쿼리 수행(또는 BEGIN으로 1번에 수행) 데이터 STATE (I, U, D 등)를 활용하는 방식 화면에서 데이터에 INSERT / UPDATE / DELETE 상태값을 기반으로 서버에서 DELETE 1회, INSERT 1회, UPDATE N회를 수행실무에서는 작업 공수 문제로 1번 방식(DELETE -> INSERT)을 선택하는 경우가 많았습니다. 다만 이 방법을 사용하면서 DELETE로 인해 발생하는 DB 블록 낭비기존 데이터의 CREATE_DATE가 유지되지 않아 UPDATE_DATE와 의미 차이가 사라지는 문제데이터 관리, 유지보수, 성능 측면에서 어떤 방식이 더 바람직한 선택인지 궁금합니다.
-
미해결김영한의 실전 데이터베이스 - 설계 2편, 실무에서 반드시 마주치는 9가지 설계 패턴
상속 관계 모델링의 적용 기준 질문
안녕하세요 영한님!"8. 상속 관계 설계" 강의에서, 상품 테이블을 예시로 들어, 슈퍼타입-서브타입 모델링을 설명해주셨는데요! 만약에 서브타입이 다른 테이블과 관계를 맺게 된다면, 이 케이스에도 슈퍼타입-서브타입 모델링을 적용하는게 괜찮을지 궁금하여 질문을 드립니다! 예를 들어, 신고 내역을 저장하는 테이블을 모델링하는 상황에서, 회원 신고/게시글 신고/댓글 신고/그룹 신고 이렇게 나뉜다면 슈퍼타입-서브타입 상속 전략을 사용해도 괜찮은지 궁금합니다.
-
미해결[2026] 비전공자도 한 번에 합격하는 SQLD 올인원
GROUP BY 절 문제 4번에서 집계함수가 반드시 포함? 필수?
GROUP BY 절 문제 4번에서 집계함수가 반드시 포함되어야 한다고 나오는데 반드시 필수는 아닌거로 알아서 글 남겨봅니다.
-
미해결김영한의 실전 데이터베이스 - 기본편
ON을 명시하지 않았을 경우 질문드립니다.
문제 3번을 풀다가select * from orders o inner join users as u on o.user_id=u.user_id inner join products as p;이러한 쿼리를 작성하게 되었습니다.실행 결과로 오류 없이 테이블이 나왔습니다.그래서 이걸 바탕으로 문제를 풀었다가 결과가 답안과 달라 문제점을 찾다가 on o.product_id=p.product_id 을 작성하지 않은 잘못된 쿼리라는 것 알았습니다.여기서 질문이 있습니다.inner join이 공통된 부분을 join하는 것이라고 하셨는데,orders와 users를 조인 후 products를 조인 할 때 제가 작성한 쿼리의 경우 연결 조건인 ON을 지정하지 않았는데 어떻게 join하여 결과 테이블이 나올 수 있는 것인가요?
-
미해결[2026] SQLD 문제가 어려운 당신을 위한 노랭이 176 문제 풀이
실전 모의고사 난이도
안녕하세요! 실전 모의고사는 일반 sqld 시험에 비해서 난이도가 어려운 편인가요? 쉬운 편인가요?
-
미해결김영한의 실전 데이터베이스 - 설계 2편, 실무에서 반드시 마주치는 9가지 설계 패턴
TTL 캐싱에 대한 질문
안녕하세요! 강의를 듣다보니 TTL 캐싱을 사용할 때에도 오류가능성이 존재하지 않나 싶어 질문 남깁니다. TTL을 1분이라 가정했을 때 TTL이 지나기 전에 DB의 값이 바뀌고, 그 이후 TTL이 지나기 전에 캐싱된 값을 사용하게 된다면 DB에 있는 값과 캐싱되어있는 값에는 차이가 존재하지 않나요? 이에 대해선 어떻게 구현되어있는지 궁금합니다
-
미해결김영한의 실전 데이터베이스 - 기본편
강의 2:53 union을썼는데도 션이 중복
[질문 내용]강의 UNION 정렬 2:53초부근에UNION을 사용해서 결과를 불러오는데 션이 중복으로 표출됩니다. UNION은 중복을 제거하지 않나요?created_at 에 데이터가 다르기때문에 모두 표출된건지 궁금합니다!
-
미해결[2026] 비전공자도 한 번에 합격하는 SQLD 올인원
Live SQL 스크립트 설치건
먼저 유사한 질문이 있었는지 검색해보세요.서로 예의를 지키며 존중하는 문화를 만들어가요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.알려주신 스크립트 'EMP and DEPT' 스크립트가 보이지 않는데, 어떤 스크립트를 설치하면 될까요?
-
미해결실습으로 손에 잡히는 SQLD(2과목)
Intersect로 봄학기에 등록된 수업 검색 영상에서 궁금한 점이 있습니다.
1분 50초에 SELECTb.course_id, b.titleFROMv_intersecta, coursebWHEREa.course_id = b.course_id코드가 이렇게 짜여져있는데 course 테이블에 title은 없고 course_name으로 유추되는데 맞을까요?
-
미해결김영한의 실전 데이터베이스 - 설계 2편, 실무에서 반드시 마주치는 9가지 설계 패턴
공통 코드 사용시 컬럼 타입 설정
안녕하세요.공통 코드를 가져와 사용하는 테이블 스키마를 정의할 때 궁금한 점이 있습니다.영상 11분 05초를 보면 주문 테이블과 결제 테이블을 정의합니다.이때 , order_status, payment_method, payment_status와 같은 컬럼을 varchar로 정의하셨습니다.type-safe하게 정의한다면, 해당 컬럼들을 enum으로 정의하거나 공통 코드 상세 테이블과 relation을 설정해서 외래키를 사용할 거 같은데,이와 같은 방식은 유지보수를 더 어렵게 만드는 구조인걸까요?type-safe하게 만들고 싶다면 애플리케이션 레벨(서버측 코드)에서 정의해주는게 좋은 방법인걸까요?----------------------참고로 저는 nodejs 기반의 백엔드 개발자이며,김영한님의 강의는 네트워크+DB만 수강하고 있습니다.(java+springboot+jpa 등의 지식과 경험은 전무합니다.)