강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của dahwi12238
dahwi12238

câu hỏi đã được viết

[2026] Giải 176 bài tập sách vàng dành cho bạn thấy đề thi SQLD khó

Câu 50 - Diễn giải kết quả hàm tổng hợp cho cột chứa NULL

실전 모의고사 1회 7번 질문

Viết

·

70

0

릴레이션에서 적절하지 않은 걸 고르는 문젠데

고객ID가 기본키가 될 수 없다 -> 이 말이 왜 적절한건지 이해가 안가요 !ㅠㅠ.. id는 기본키가능하지 않나요??.. 아니면 주문에 대한 테이블이라 한 고객이 여러번 주문을 하면 id가 중복해서 나올 수 있기 때문에 그런걸까요??

sql빅데이터oraclemssqlSQLD

Câu trả lời 2

0

algolearn님의 프로필 이미지
algolearn
Người chia sẻ kiến thức

안녕하세요. 문의하신 내용에 대해서 아래와 같이 답변드릴게요.

 

문제는 "릴레이션에 대한 설명으로 가장 적절하지 않은 것을" 찾는 것입니다.

해당 릴레이션의 데이터를 보면 "고객 주문정보"로 판단할 수 있어요. 일반적으로 고객은 여러 건의 주문을 발생시킬 수 있기 때문에 고객id 만으로는 기본키로 사용하기는 어렵습니다. 따라서 보기 1번 고객 id 가 기본키가 될 수 없다라는 문장은 적절하다고 볼수 있습니다.

 

물론 문제 자체에 상세한 제약 조건을 제시한 것이 아니기 때문에, 고객id도 기본키가 될 수 있다라고 이의를 제기할 수도 있습니다. 하지만, 문제 자체가 "가장 적절하지 않은 것은"을 찾는 것입니다. 이렇게 문제가 나올 경우, 보기 중에서 가장 적절하지 않은 것을 선택하는 게 더 유리합니다.

 

날씨가 많이 덥네요. 공부하시느라 힘들겠습니다. 🙂 힘내시구요. 꼭 합격하시길 바랄게요. 감사합니다.

0

안녕하세요, 인프런 AI 인턴입니다. 박다휘님.

질문해주신 릴레이션에서 “고객ID가 기본키가 될 수 없다”는 문제에 대한 이해를 돕고자 전체적인 개념을 설명드리겠습니다.

기본키(Primary Key)는 데이터베이스 테이블에서 레코드를 고유하게 식별할 수 있는 컬럼 또는 컬럼 세트를 의미합니다. 기본키의 중요한 특성은 고유성(unique)과 비어있을 수 없는 것(not null)입니다.

고객ID가 기본키가 될 수 없다고 하는 이유는, 질문에서 언급하셨듯이 ‘주문(Order)‘이라는 테이블에서 고객ID가 중복으로 존재할 수 있기 때문입니다. 주문 테이블은 하나의 고객이 여러 번의 주문을 할 수 있기 때문에, 고객ID만을 기본키로 설정할 경우 한 고객이 여러 주문을 할 때 중복되어 기본키의 고유성 조건을 만족하지 못하게 됩니다.

이런 경우, 주문번호(OrderID)와 같이 주문을 고유하게 식별할 수 있는 정보가 기본키로 설정되는 것이 이상적입니다.

비슷한 주제에 대해 더 많은 정보를 얻을 수 있는 관련 답변을 참고해보시면 좋을 것 같습니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Hình ảnh hồ sơ của dahwi12238
dahwi12238

câu hỏi đã được viết

Đặt câu hỏi