**카디널리티(Cardinality)**는 상황에 따라 약간 다른 의미로 사용되지만, 공통적으로 "어떤 대상의 개수" 또는 **"몇 번 연결되거나 발생하는가"**를 나타내는 개념입니다.
ER(Entity-Relationship) 모델에서 카디널리티는 **개체(Entity) 간의 관계(Relationship)**에서, **한 개체가 다른 개체와 관계를 가질 수 있는 수(횟수)**를 의미합니다.
유형 | 설명 | 예시 |
---|---|---|
1:1 (일대일) | 한 사람은 하나의 여권만 가질 수 있음 | 주민 - 주민등록증 |
1\:N (일대다) | 고객 한 명은 여러 주문을 할 수 있음 | 고객 - 주문 |
N\:M (다대다) | 학생 여러 명이 여러 과목을 수강할 수 있음 | 학생 - 과목 |
[A] 1 --- 1 [B]
[A] 1 --- N [B]
[A] N --- M [B]
※ 보통 관계선 위에 숫자(1, N, M) 또는 (min, max) 형식으로 표현
정의: 집합 내 원소의 개수
예:
정의: 컬럼의 서로 다른 값 개수 (Unique values)
예:
외래키 제약조건에 따라 ER 모델처럼
구분 | 의미 | 예시 |
---|---|---|
ER 모델 | 개체 간 관계 수 | 고객 1명 ↔ 주문 여러 건 (1\:N) |
수학(집합 이론) | 집합의 원소 개수 | {a, b, c} → 3개 |
DB 속성 카디널리티 | 속성(컬럼)의 서로 다른 값 개수 | 성별: 2개 (남/여) |
프로그래밍/통계 | 데이터 값의 다양성 또는 연결 수 | Set 자료형 원소 수 |