Aljabar Relasional dalam DBMS: Operations dengan Contoh
Aljabar Relasional
ALJABAR RELASI adalah bahasa kueri prosedural yang banyak digunakan. Ia mengumpulkan contoh relasi sebagai masukan dan memberikan kejadian relasi sebagai keluaran. Ia menggunakan berbagai operasi untuk melakukan tindakan ini. Operasi kueri aljabar relasional SQL dilakukan secara rekursif pada suatu relasi. Output dari operasi ini adalah relasi baru, yang mungkin terbentuk dari satu atau lebih relasi input.
Aljabar Relasional SQL Dasar Operations
Aljabar Relasional dibagi dalam berbagai kelompok
Relasional Unary Operations
- PILIH (simbol: σ)
- PROYEK (simbol: π)
- GANTI NAMA (simbol: ρ)
Aljabar Relasional Operations Dari Teori Himpunan
- PERSATUAN (υ)
- PERSIMPANGAN ( ),
- PERBEDAAN (-)
- PRODUK KARTESIAN ( x )
Relasional Biner Operations
- BERGABUNG
- DIVISI
Mari kita pelajari secara detail dengan solusi:
PILIH (σ)
Operasi SELECT digunakan untuk memilih subset tupel berdasarkan kondisi pemilihan tertentu. Simbol Sigma(σ) menunjukkannya. Ini digunakan sebagai ekspresi untuk memilih tupel yang memenuhi kondisi seleksi. Operator pilih memilih tupel yang memenuhi predikat tertentu.
σp(r)
σ
adalah predikat
r
singkatan dari relasi yang merupakan nama tabel
p
adalah logika preposisional
Contoh 1
σ topic = "Database" (Tutorials)
Keluaran – Memilih tupel dari Tutorial di mana topik = 'Database'.
Contoh 2
σ topic = "Database" and author = "guru99"( Tutorials)
Keluaran – Memilih tupel dari Tutorial yang topiknya adalah 'Database' dan 'penulis' adalah guru99.
Contoh 3
σ sales > 50000 (Customers)
Keluaran – Memilih tupel dari Pelanggan yang penjualannya lebih besar dari 50000
Proyeksi (π)
Proyeksi menghilangkan semua atribut dari relasi masukan kecuali yang disebutkan dalam daftar proyeksi. Metode proyeksi mendefinisikan relasi yang berisi subset vertikal Relasi.
Ini membantu mengekstrak nilai atribut tertentu untuk menghilangkan nilai duplikat. Simbol (pi) digunakan untuk memilih atribut dari suatu relasi. Operator ini membantu Anda mempertahankan kolom tertentu dari suatu relasi dan membuang kolom lainnya.
Contoh Proyeksi:
Perhatikan tabel berikut ini
ID Pelanggan | Nama Pelanggan | Status |
---|---|---|
1 | Aktif | |
2 | Amazon | Aktif |
3 | Apple | non-aktif |
4 | Alibaba | Aktif |
Di sini, proyeksi Nama Pelanggan dan status akan diberikan
Π CustomerName, Status (Customers)
Nama Pelanggan | Status |
---|---|
Aktif | |
Amazon | Aktif |
Apple | non-aktif |
Alibaba | Aktif |
Ganti nama (ρ)
Ganti nama adalah operasi unary yang digunakan untuk mengganti nama atribut suatu relasi.
ρ (a/b)R akan mengganti nama atribut 'b' dari relasi menjadi 'a'.
Operasi gabungan ()
UNION dilambangkan dengan simbol ∪. Ini mencakup semua tupel yang ada di tabel A atau di B. Ini juga menghilangkan tupel duplikat. Jadi, himpunan A UNION himpunan B akan dinyatakan sebagai:
Hasilnya <- A ∪ B
Agar operasi serikat dianggap sah, maka kondisi berikut harus terpenuhi –
- R dan S harus mempunyai jumlah atribut yang sama.
- Domain atribut harus kompatibel.
- Tupel duplikat harus dihapus secara otomatis.
Example
Perhatikan tabel berikut.
kolom 1 | kolom 2 | kolom 1 | kolom 2 | |
---|---|---|---|---|
1 | 1 | 1 | 1 | |
1 | 2 | 1 | 3 |
A ∪ B memberi
kolom 1 | kolom 2 |
---|---|
1 | 1 |
1 | 2 |
1 | 3 |
Tetapkan Selisih (-)
– Simbol menunjukkannya. Hasil dari A – B adalah relasi yang memuat semua tupel yang ada di A tetapi tidak ada di B.
- Nama atribut A harus sesuai dengan nama atribut di B.
- Relasi dua operan A dan B harus kompatibel atau kompatibel dengan Union.
- Harus didefinisikan relasi yang terdiri dari tupel-tupel yang berada di relasi A, tetapi tidak di relasi B.
Example
A-B
kolom 1 | kolom 2 |
---|---|
1 | 2 |
Persimpangan
Persimpangan didefinisikan dengan simbol ∩
A B
Mendefinisikan relasi yang terdiri dari himpunan semua tupel yang ada di A dan B. Namun, A dan B harus kompatibel dengan gabungan.
Contoh:
A ∩ B
kolom 1 | kolom 2 |
---|---|
1 | 1 |
Produk Cartesian (X) dalam DBMS
Produk Cartesian di DBMS adalah operasi yang digunakan untuk menggabungkan kolom dari dua relasi. Secara umum, produk kartesius tidak akan pernah menjadi operasi yang bermakna jika dilakukan sendiri. Namun, operasi ini akan menjadi bermakna jika diikuti oleh operasi lain. Operasi ini juga disebut Produk Silang atau Gabungan Silang.
Contoh – Produk Cartesian
σ kolom 2 = '1' (AXB)
Output – Contoh di atas menunjukkan semua baris dari relasi A dan B yang kolom 2 bernilai 1
kolom 1 | kolom 2 |
---|---|
1 | 1 |
1 | 1 |
Ikuti seminar Operations
Operasi gabungan pada dasarnya adalah perkalian kartesius yang diikuti dengan kriteria seleksi.
Operasi gabungan dilambangkan dengan ⋈.
Operasi JOIN juga memungkinkan penggabungan berbagai tupel terkait dari relasi berbeda.
Jenis GABUNG:
Berbagai bentuk operasi gabungan adalah:
Gabungan Dalam:
- Theta bergabung
- EQUI bergabung
- Gabungan alami
Gabungan luar:
- Gabung Luar Kiri
- Gabung Luar Kanan
- Gabung Luar Penuh
Gabung Batin
Dalam inner join, hanya tupel yang memenuhi kriteria pencocokan yang disertakan, sedangkan sisanya dikecualikan. Mari kita pelajari berbagai jenis Inner Joins:
Gabung Theta
Kasus umum operasi GABUNG disebut gabungan Theta. Hal ini dilambangkan dengan simbol θ
Example
A ⋈θ B
Theta join dapat menggunakan ketentuan apapun dalam kriteria seleksi.
Sebagai contoh:
A ⋈ A.column 2 > B.column 2 (B)
kolom 1 | kolom 2 |
---|---|
1 | 2 |
EQUI bergabung
Jika gabungan theta hanya menggunakan kondisi ekuivalen, maka gabungan tersebut menjadi gabungan equivalen.
Sebagai contoh:
A ⋈ A.column 2 = B.column 2 (B)
kolom 1 | kolom 2 |
---|---|
1 | 1 |
Gabung EQUI adalah operasi yang paling sulit untuk diterapkan secara efisien menggunakan SQL dalam RDBMS dan salah satu alasannya RDBMS memiliki masalah kinerja yang penting.
GABUNG ALAMI (⋈)
Penggabungan alami hanya dapat dilakukan jika terdapat atribut (kolom) yang sama di antara relasi. Nama dan tipe atribut harus sama.
Example
Perhatikan dua tabel berikut ini
Di | Persegi |
---|---|
2 | 4 |
3 | 9 |
Di | Kubus |
---|---|
2 | 8 |
3 | 27 |
C ⋈ D
Di | Persegi | Kubus |
---|---|---|
2 | 4 | 8 |
3 | 9 | 27 |
OUTER GABUNG
Dalam gabungan luar, bersama dengan tupel yang memenuhi kriteria pencocokan, kami juga menyertakan beberapa atau semua tupel yang tidak cocok dengan kriteria.
Gabung Luar Kiri (A ⟕ B)
Di gabungan luar kiri, operasi memungkinkan menjaga semua tupel di relasi kiri. Namun jika tidak ditemukan tupel yang cocok pada relasi kanan, maka atribut relasi kanan pada hasil join diisi dengan nilai null.
Perhatikan 2 Tabel berikut ini
Di | Persegi |
---|---|
2 | 4 |
3 | 9 |
4 | 16 |
Di | Kubus |
---|---|
2 | 8 |
3 | 18 |
5 | 75 |
AB
Di | Persegi | Kubus |
---|---|---|
2 | 4 | 8 |
3 | 9 | 18 |
4 | 16 | - |
Gabung Luar Kanan ( A ⟖ B )
Pada gabungan luar kanan, operasi memungkinkan menjaga semua tupel dalam relasi yang benar. Namun jika tidak ditemukan tupel yang cocok pada relasi kiri, maka atribut relasi kiri pada hasil join diisi dengan nilai null.
AB
Di | Kubus | Persegi |
---|---|---|
2 | 8 | 4 |
3 | 18 | 9 |
5 | 75 | - |
Gabung Luar Penuh (A ⟗ B)
Dalam gabungan luar penuh, semua tupel dari kedua relasi disertakan dalam hasil, terlepas dari kondisi pencocokannya.
AB
Di | Kubus | Persegi |
---|---|---|
2 | 4 | 8 |
3 | 9 | 18 |
4 | 16 | - |
5 | - | 75 |
Ringkasan
Operation(Simbol) | Tujuan |
---|---|
Pilih (σ) | Operasi SELECT digunakan untuk memilih subset tupel berdasarkan kondisi pemilihan tertentu |
Proyeksi (π) | Proyeksi menghilangkan semua atribut dari relasi masukan kecuali yang disebutkan dalam daftar proyeksi. |
Serikat Operation(∪) | UNION dilambangkan dengan simbol. Ini mencakup semua tupel yang ada di tabel A atau B. |
Tetapkan Perbedaan (-) | – Simbol menunjukkannya. Hasil dari A – B adalah relasi yang memuat semua tupel yang ada di A tetapi tidak ada di B. |
Persimpangan (∩) | Persimpangan mendefinisikan suatu relasi yang terdiri dari himpunan semua tupel yang ada di A dan B. |
Produk Kartesius (X) | Operasi kartesius berguna untuk menggabungkan kolom dari dua relasi. |
Gabung Batin | Gabungan dalam, hanya mencakup tupel yang memenuhi kriteria pencocokan. |
Gabungan Theta (θ) | Kasus umum operasi GABUNG disebut gabungan Theta. Dilambangkan dengan simbol θ. |
Bergabunglah dengan EQUI | Jika gabungan theta hanya menggunakan kondisi ekuivalen, maka gabungan tersebut menjadi gabungan equivalen. |
Gabung Alami(⋈) | Penggabungan alami hanya dapat dilakukan jika terdapat atribut (kolom) yang sama di antara relasi. |
Gabung Luar | Dalam gabungan luar, bersama dengan tupel yang memenuhi kriteria pencocokan. |
Gabung Luar Kiri( |
Di gabungan luar kiri, operasi memungkinkan menjaga semua tupel di relasi kiri. |
Gabungan Luar Kanan( |
Pada gabungan luar kanan, operasi memungkinkan menjaga semua tupel dalam relasi yang benar. |
Gabung Luar Penuh( |
Dalam gabungan luar penuh, semua tupel dari kedua relasi disertakan dalam hasil terlepas dari kondisi pencocokannya. |