Download presentation
Presentation is loading. Please wait.
Published byΝικόστρατος Κουρμούλης Modified 6년 전
2
1. 관계 데이터 언어 관계 대수 1) 관계대수 정의 ① 원하는 정보와 그 정보를 어떻게 유도하는가를 기술하는 절차적 인 방법 ② 주어진 관계로 부터 원하는 관계를 얻기 위해 연산자와 연산 규칙을 제공하는 언어 ③ 릴레이션 조작을 위한 연산의 집합으로 피연산자와 결과가 모두 릴레이션이라는 특성을 가짐
3
2) 순수 관계 연산자 관계 데이터베이스에 적용할 수 있도록 특별히 개발된 관계 연산자 ① 디비전 (Division) • X ⊃ Y 인 2개의 R에서 R(X) 와 S(Y) 가 있을 때 • R의 속성이 S의 속성 값을 모두가 가진 튜플에서 S가 가진 속성을 구하는 연산자 • 표기 : R[속성 r ÷ 속성 s]S
4
예) <구입자 R> <생산품 R> 번호 이름 구입품코드 1 박 A B 2 김 3 정 C 생산품코드 A B 구입자 [구입품코드 ÷ 생산품코드] 생산품 번호 이름 1 박 2 김
5
② 프로젝션 (Projection) • 테이블에서 특정 속성에 해당하는 열을 선택하는데 사용되며 결과로는 릴레이션의 수직적 부분 집합에 해당하는 관계 대수 연산자 • π 기호 사용 • A unary operation that returns its argument relation, with certain attributes left out. Since a relation is a set, any duplicate rows are eliminated. (인수 릴레이션에 해당하는 속성만 반환하는 단항 연산이다 . 릴레이션은 집합이기 때문에 중복 열은 제거된다.) • 표기 : π (속성리스트) (R)
6
예) <성적 R> 이름 국어 영어 수학 총점 평균 박 95 80 255 85 김 70 90 240 정 100 300
π (이름, 평균) (성적) 이름 평균 박 85 김 80 정 100
7
<성적 R> <학적 R> 학번 이름 영어 수학 총점 평균
③ 조인 (Join) •공통된 속성 기준 2개의 R ⇨ 하나로 만듬 • 표기 : R ⋈ 귀속성r = 귀속성s S 예) <성적 R> <학적 R> 학번 이름 영어 수학 총점 평균 123 영웅 90 80 170 85 456 호걸 70 50 120 60 학번 주소 123 서울 456 대구 성적 R과 학적 R을 학번 기준 합쳐라 - 성적 ⋈ (학번=학번) 학점 학번 이름 영어 수학 총점 평균 주소 123 영웅 90 80 170 85 서울 456 호걸 70 50 120 60 대구
8
④ 셀렉션 (Selection) • 조건을 만족하는 릴레이션의 수평적 부분의 집합 (행을 구하는 연산) 으로 구성하여, 연산자의 기호는 그리스문자 시그마 (σ) 를 사용 • 표기 : σ <조건> (R) 예) <성적 R> 이름 국어 영어 수학 총점 평균 박 95 80 255 85 김 70 90 240 정 100 300 - 성적 R에서 평균 90점 이상 튜플들을 모을 때 σ (평균 ≥ 90) (성적) 이름 국어 영어 수학 총점 평균 정 100 300
9
3) 관계대수 집합 연산자 ① 합집합(Union) •두 릴레이션에 존재하는 튜플의 합집합을 구함 •결과 튜플은 중복이 제거됨 ② 교집합(Intersection) • 두 릴레이션에 존재하는 튜플의 교집합을 구함 ③ 차집합(Difference) •두 릴레이션에 존재하는 튜플의 차집합을 구함
10
④ 카티션 곱 (Cartesian Product)
• A relational algebra operation on two relations, R1 and R2, producing a third relation R3, with R3 containing the concentration of every row in R1 with every row in R2. (두 릴레이션 R1과 R2로 R1과 R2의 모든 행을 연결한 것을 지니는 3번째 릴레이션 R3를 만드는 관계대수 연산) • 두 릴레이션 (Relation) 의 교차 곱을 수행 • 릴레이션 R1과 R2를 카티션 곱을 하면 각 릴레이션의 튜플 수를 곱한 것과 같은 개수의 결과 튜플이 생김 • 공통 튜플 수와 관계가 없음 ※ 두 테이블의 속성 개수가 같고 대응되는 각 속성들의 도메인이 같으나 속성명들이 다른 경우 합집합, 교집합, 차집합이 가능함
11
(2) 관계 해석 (Relational Calculus)
1) 관계해석의 특징 ① 튜플 관계 해석과 도메인 관계 해석이 있음 ② 기본적으로 관계 해석과 관계 대수는 관계 데이터베이스를 처리 하는 기능과 능력 면에서 동등함 ③ 관계 해석으로 질의어를 표현 ④ 원하는 릴레이션을 정의하는 방법을 제공, 즉 원하는 정보가 무엇 이라는 것만 정의하는 비절차적인 언어 ⑤ 연산들의 절차(sequence) 를 사용하여 데이터를 가져옴 ⑥기본적인 연산자로 UNION, INTERSECTION, DIFFERENCE 를 사용함 ⑦ 전체 관계를 조작하는데 사용되는 연산들의 집합
12
1. 조건을 만족하는 릴레이션의 수평적 부분집합으로 구성하여, 연산자의 기호는
그리스문자 시그마 (σ) 를 사용하는 관계대수 연산자는? (0205, 0209, 0405) 가. 연산자 select 나. 연산자 project 다. 연산자 join 라. 연산자 division 2. 다음 설명은 어떤 연산에 대한 것인가? (0308) A unary operation that returns its argument relation, with certain attributes left out. Since a relation is a set, any duplicate rows are eliminated. 가. project 나. division 다. select 라. join 3. 관계 대수 (Relational Algebra) 의 연산자 중에서 두 릴레이션 (Relation) 의 교차 곱을 수행하기 때문에 두 릴레이션의 공통 튜플 수와 관계가 없는 것은? (0509) 가. UNION 나. INTERSECTION 다. DIFFERENCE 라. CARTESIAN PRODUCT
13
4. 다음 중 SQL 의 합집합 연산이 제대로 수행되는 경우는? (0103)
가. 두 테이블의 속성 개수가 같고, 대응되는 각 속성들의 도메인이 같으나 속성명들이 다른 경우 나. 두 테이블의 속성 개수가 같고, 대응되는 각 속성들의 도메인이 같으나 속성들의 도메인이 다른 경우 다. 두 테이블의 속성 개수가 다르나, 대응되는 각 속성들의 도메인이 같으며 속성명들이 같은 경우 라. 두 테이블의 속성 개수가 같으나, 대응되는 각 속성들의 도메인이 다르고 속성명들이 다른 경우 5. 관계 해석 (Relational Calculus) 에 대한 설명으로 잘못된 것은? (9904, 0409, 0605) 가. 튜플 관계 해석과 도메인 관계 해석이 있다. 나. 원하는 정보와 그 정보를 어떻게 유도하는가를 기술하는 절차적인 특성을 가진다. 다. 기본적으로 관계 해석과 관계 대수는 관계 데이터베이스를 처리하는 기능과 능력 면에서 동등하다. 라. 수학의 predicate calculus 에 기반을 두고 있다.
14
6. 관계 해석 (relational calculus)에 대한 설명으로 옳지 않은 것은? (0003)
가. 관계 해석으로 질의어를 표현한다. 나. 원하는 릴레이션을 정의하는 방법을 제공하며, 비절차적인 언어이다. 다. 튜플 관계 해석과 도메인 관계 해석이 있다. 라. 릴레이션 조작을 위한 연산의 집합이다. 7. 조건을 만족하는 릴레이션의 수평적 부분집합으로 구성하며, 연산자의 기호는 그리스 문자 시그마 (σ) 를 사용하는 관계대수 연산자는? ( ) 가. 연산자 select 나. 연산자 project 다. 연산자 join 라. 연산자 division
Similar presentations