데이터베이스에서 질의를 표현하는 방법은 크게 **관계 대수(Relational Algebra)**와
관계 해석(Relational Calculus) 두 가지가 있다.
둘 다 원하는 데이터를 추출하는 방법이지만, 표현 방식과 개념이 다르다.
✅ 관계 대수란?
관계 대수는 데이터를 어떻게 처리할지를 단계적으로 정의하는 방식이다.
즉, 절차적 언어로 테이블 간의 연산 과정을 명시한다.
예를 들어, 두 테이블을 조인하거나 조건을 걸어 필터링하는 작업이 모두 관계 대수 연산이다.
📌 주요 연산
- σ(Selection): 조건에 맞는 튜플 선택 → σ(age > 20)(Student)
- π(Projection): 특정 속성 추출 → π(name, age)(Student)
- ∪, ∩, −: 집합 연산
- ×(카티션 프로덕트)
- ⨝(조인)
✅ 관계 해석이란?
관계 해석은 원하는 데이터가 어떤 조건을 만족해야 하는지를 선언적으로 정의한다.
즉, “이런 조건을 만족하는 데이터가 필요하다”고만 말하고,
어떻게 처리할지는 DBMS가 결정한다.
📌 예시 표현
{ S.name | ∃R (S.ID = R.ID ∧ R.score > 80) }
→ 점수가 80점 넘는 학생의 이름을 구하는 질의
관계 해석은 비절차적 언어이기 때문에
사용자가 원하는 결과만 정의하면 된다.
✅ 비교 요약표
항목 | 관계 대수 | 관계 해석 |
언어 유형 | 절차적 언어 | 선언적 언어 |
초점 | 데이터를 어떻게 처리할지 | 무엇을 얻을지 조건으로 명시 |
연산자 | 조인, 선택, 투영 등 명시 | 수학적 조건식 사용 |
SQL과의 연관 | SQL의 내부 동작과 유사 | SQL의 외형적 질의와 유사 |
예시 | σ(age>20)(Student) | { s |
✅ 결론
관계 대수는 ‘과정 중심’, 관계 해석은 ‘결과 중심’ 개념이다.
SQL은 이 둘의 특징을 모두 반영해서 설계된 언어이며,
관계형 데이터베이스를 다루는 데 있어 기본 개념으로 매우 중요하다.
이 차이를 이해하면 정보처리기사 문제뿐만 아니라
실제 SQL 작성 시에도 더 명확한 사고를 할 수 있게 된다.
📌 매일 간단히 IT 관련 개념을 익히고 싶다면 구독하세요!👇👇👇
http://www.youtube.com/@itbite_daily
오늘의 IT한입
👋 하루 한 입, 쉽게 배우는 IT & 개발 개념! 프로그래밍, 데이터베이스, 운영체제, 네트워크, 보안, 코딩테스트까지! 취업 준비부터 실무 감각까지 매일 짧고 강력하게 정리해드립니다. 📍 매일
www.youtube.com
'IT개발 > Tech Notes' 카테고리의 다른 글
정규화란? 제1정규형부터 제3정규형까지 쉽게 정리 (0) | 2025.05.01 |
---|---|
ACID란? 트랜잭션의 4가지 특성 완벽 이해 (0) | 2025.05.01 |
Paging vs Segmentation – 메모리 관리 기법 완전 비교 (0) | 2025.04.30 |
Deadlock(교착 상태) 완전 정리 - 발생 조건과 해결 방법까지 (0) | 2025.04.29 |
운영체제 프로세스 상태 변화 완벽 정리 - Ready, Running, Blocked, Terminated (0) | 2025.04.27 |
댓글