logo

Wprowadzenie algebry relacyjnej w DBMS

Warunek wstępny: Model relacyjny w DBMS

Algebra Relacyjna jest proceduralnym językiem zapytań. Algebra relacyjna zapewnia głównie teoretyczne podstawy relacyjnych baz danych i SQL . Głównym celem stosowania algebry relacyjnej jest zdefiniowanie operatorów, które przekształcają jedną lub więcej relacji wejściowych w relację wyjściową. Biorąc pod uwagę, że operatory te akceptują relacje jako dane wejściowe i tworzą relacje jako dane wyjściowe, można je łączyć i wykorzystywać do wyrażania potencjalnie złożonych zapytań, które przekształcają potencjalnie wiele relacji wejściowych (których dane są przechowywane w bazie danych) w jedną relację wyjściową (wyniki zapytania). . Ponieważ jest to czysta matematyka, w algebrze relacyjnej nie używa się angielskich słów kluczowych, a operatory są reprezentowane za pomocą symboli.



Podstawowe operatory

Są to podstawowe/fundamentalne operatory używane w algebrze relacyjnej.

  1. Wybór (σ)
  2. Projekcja (π)
  3. Unia (U)
  4. Ustaw różnicę(-)
  5. Ustaw przecięcie (∩)
  6. Zmień nazwę (ρ)
  7. Produkt kartezjański (X)

1. Wybór (σ): Służy do wybierania wymaganych krotek relacji.

Przykład:



A B C
1 2 4
2 2 3
3 2 3
4 3 4

Dla powyższej relacji σ(c>3)R wybierze krotki, które mają c większe niż 3.

A B C
1 2 4
4 3 4

Notatka: Operator wyboru wybiera tylko wymagane krotki, ale ich nie wyświetla. Do wyświetlania używany jest operator projekcji danych.

2. Projekcja (π): Służy do projekcji wymaganych danych kolumnowych z relacji.



wyszukiwanie kontradyktoryjne

Przykład: Rozważmy tabelę 1. Załóżmy, że chcemy kolumny B i C z relacji R.

π(B,C)R will show following columns.>
B C
2 4
2 3
3 4

Notatka: Domyślnie projekcja usuwa zduplikowane dane.

3. Unia (U): Operacja sumowania w algebrze relacyjnej jest taka sama jak operacja sumy w teorii mnogości.

Przykład:

FRANCUSKI

Imię_ucznia Roll_Number
Baran 01
Mohan 02
Wiwek 13
Geeta 17

NIEMIECKI

Imię_ucznia Roll_Number
Wiwek 13
Geeta 17
Shyam dwadzieścia jeden
Rohana 25

Rozważ poniższą tabelę studentów mających różne przedmioty fakultatywne w swoich kursach.

π(Student_Name)FRENCH U π(Student_Name)GERMAN>
Imię_ucznia
Baran
Mohan
Wiwek
Geeta
Shyam
Rohana

Notatka: Jedynym ograniczeniem w połączeniu dwóch relacji jest to, że obie relacje muszą mieć ten sam zestaw atrybutów.

4. Ustaw różnicę(-): Różnica zbiorów w algebrze relacyjnej jest tą samą operacją na różnicy zbiorów, co w teorii mnogości.

Przykład: Z powyższej tabeli dla języka francuskiego i niemieckiego, wartość różnicy ustawień stosuje się w następujący sposób

π(Student_Name)FRENCH - π(Student_Name)GERMAN>
Imię_ucznia
Baran
Mohan

Notatka: Jedynym ograniczeniem w zakresie różnicy między dwiema relacjami jest to, że obie relacje muszą mieć ten sam zestaw atrybutów.

5. Ustaw przecięcie (∩): Przecięcie zbioru w algebrze relacyjnej jest tą samą operacją przecięcia zbiorów w teorii mnogości.

Przykład: Z powyższej tabeli języka francuskiego i niemieckiego, przecięcie zestawu jest używane w następujący sposób

π(Student_Name)FRENCH ∩ π(Student_Name)GERMAN>
Imię_ucznia
Wiwek
Geeta

Notatka: Jedynym ograniczeniem w zakresie różnicy między dwiema relacjami jest to, że obie relacje muszą mieć ten sam zestaw atrybutów.

6. Zmień nazwę (ρ): Zmień nazwę to jednoargumentowa operacja używana do zmiany nazwy atrybutów relacji.

 ρ(a/b)R will rename the attribute 'b' of the relation by 'a'.>

7. Produkt krzyżowy (X): Produkt krzyżowy pomiędzy dwiema relacjami. Powiedzmy, że A i B, więc iloczyn krzyżowy pomiędzy A X B da w wyniku wszystkie atrybuty A, po których następują wszystkie atrybuty B. Każdy rekord A zostanie sparowany z każdym rekordem B.

Przykład:

Maszyna wirtualna Java

A

Nazwa Wiek Seks
Baran 14 M
do końca piętnaście F
Kima 20 M

B

ID Kurs
1 DS
2 DBMS

A X B

Nazwa Wiek Seks ID Kurs
Baran 14 M 1 DS
Baran 14 M 2 DBMS
do końca piętnaście F 1 DS
do końca piętnaście F 2 DBMS
Kima 20 M 1 DS
Kima 20 M 2 DBMS

Notatka: Jeśli A ma „n” krotek, a B ma „m” krotek, wówczas A X B będzie miało „n*m” krotek.

Operatory pochodne

Oto niektóre z operatorów pochodnych, które pochodzą od operatorów podstawowych.

  1. Naturalne połączenie(⋈)
  2. Dołączenie warunkowe

1. Naturalne połączenie (⋈): Sprzężenie naturalne jest operatorem binarnym. Naturalne połączenie dwóch lub więcej relacji spowoduje utworzenie zbioru wszystkich kombinacji krotek, w których mają one ten sam wspólny atrybut.

Przykład:

Ciąg boolowski Java

EMP

Nazwa ID Nazwa_działu
A 120 TO
B 125 HR
C 110 Obroty
D 111 TO

DZIAŁ

Nazwa_działu Menedżer
Obroty I
Produkcja Z
TO A

Naturalne połączenie pomiędzy EMP i DEPT z warunkiem:

EMP.Dept_Name = DEPT.Dept_Name

EMP ⋈ DZIAŁ

Nazwa ID Nazwa_działu Menedżer
A 120 TO A
C 110 Obroty I
D 111 TO A

2. Łączenie warunkowe: Łączenie warunkowe działa podobnie do łączenia naturalnego. W przypadku łączenia naturalnego domyślnie warunek jest równy pomiędzy wspólnymi atrybutami, natomiast w przypadku łączenia warunkowego możemy określić dowolny warunek, taki jak większy niż, mniejszy lub nierówny.

Przykład:

R

ID Seks Znaki
1 F Cztery pięć
2 F 55
3 F 60

S

ID Seks Znaki
10 M 20
jedenaście M 22
12 M 59

Połącz R i S z warunkiem Znaki R>= Znaki S

ELIMINOWAĆ R.Seks R.Marks S.ID S.Seks S.Marki
1 F Cztery pięć 10 M 20
1 F Cztery pięć jedenaście M 22
2 F 55 10 M 20
2 F 55 jedenaście M 22
3 F 60 10 M 20
3 F 60 jedenaście M 22
3 F 60 12 M 59

Rachunek relacyjny

Ponieważ algebra relacyjna jest proceduralnym językiem zapytań, rachunek relacyjny jest nieproceduralnym językiem zapytań. Zasadniczo dotyczy to wyników końcowych. Zawsze mówi mi, co mam robić, ale nigdy nie mówi mi, jak to zrobić.

Istnieją dwa typy rachunku relacyjnego

  1. Rachunek relacyjny krotki (TRC)
  2. Rachunek relacyjny domeny (DRC)

Pogłębione artykuły:
Podstawowe operatory-w-algebrze-relacyjnej
Rozszerzone operatory algebry relacyjnej