Algebra Relasional dalam DBMS: Operasi dengan Contoh

Isi kandungan:

Anonim

Algebra Perhubungan

RELATIONAL ALGEBRA adalah bahasa pertanyaan prosedur yang banyak digunakan. Ini mengumpulkan contoh hubungan sebagai input dan memberikan terjadinya hubungan sebagai output. Ia menggunakan pelbagai operasi untuk melakukan tindakan ini. Operasi pertanyaan aljabar SQL Relasional dilakukan secara rekursif berdasarkan hubungan. Hasil operasi ini adalah hubungan baru, yang mungkin terbentuk dari satu atau lebih hubungan input.

Dalam tutorial ini, anda akan belajar:

  • Algebra Perhubungan
  • PILIH (σ)
  • Unjuran (π)
  • Namakan semula (ρ)
  • Operasi kesatuan (υ)
  • Tetapkan Perbezaan (-)
  • Persimpangan
  • Produk Cartesian (X)
  • Sertailah Operasi
  • Penyertaan dalaman:
  • Theta Sertai:
  • EQUI bergabung:
  • BERSAMA ALAM (⋈)
  • BERSAMA KELUAR
  • Sambungan Luar Kiri (A B)
  • Sambungan Kanan Luar: (A B)
  • Penyertaan Luar Penuh: (A B)

Operasi Algebra Relasional SQL Asas

Algebra Relasional berpecah dalam pelbagai kumpulan

Operasi Perhubungan Tidak Bersesuaian

  • PILIH (simbol: σ)
  • PROJEK (simbol: π)
  • RENAME (simbol: ρ)

Operasi Algebra Relasional Dari Teori Set

  • Kesatuan (υ)
  • INTERSEKSI (),
  • BEZA (-)
  • PRODUK KARTESIA (x)

Operasi Hubungan Perduaan

  • SERTAI
  • BAHAGIAN

Mari kaji secara terperinci dengan penyelesaian:

PILIH (σ)

Operasi SELECT digunakan untuk memilih subset tupel mengikut keadaan pemilihan yang diberikan. Simbol Sigma (σ) menandakannya. Ini digunakan sebagai ungkapan untuk memilih tupel yang memenuhi syarat pemilihan. Pilih operator memilih tupel yang memenuhi predikat tertentu.

σp(r) σadalah predikat rbermaksud hubungan yang merupakan nama jadual padalah logik preposisi

Contoh 1

σ topic = "Database" (Tutorials)

Output - Memilih tupel dari Tutorial di mana topik = 'Pangkalan Data'.

Contoh 2

σ topic = "Database" and author = "guru99"( Tutorials)

Output - Memilih tupel dari Tutorial di mana topiknya adalah 'Pangkalan Data' dan 'pengarang' adalah guru99.

Contoh 3

σ sales > 50000 (Customers)

Keluaran - Memilih tupel dari Pelanggan dengan penjualan melebihi 50000

Unjuran (π)

Unjuran menghilangkan semua atribut hubungan input tetapi yang disebutkan dalam senarai unjuran. Kaedah unjuran mendefinisikan hubungan yang mengandungi subset Relasi menegak.

Ini membantu mengekstrak nilai atribut yang ditentukan untuk menghilangkan nilai pendua. (pi) simbol digunakan untuk memilih atribut dari hubungan. Pengendali ini membantu anda menjauhkan lajur tertentu dari hubungan dan membuang lajur lain.

Contoh Unjuran:

Pertimbangkan jadual berikut

ID pelanggan Nama Pelanggan Status
1 Google Aktif
2 Amazon Aktif
3 epal Tidak aktif
4 Alibaba Aktif

Di sini, unjuran Nama dan status Pelanggan akan memberi

Π CustomerName, Status (Customers)
Nama Pelanggan Status
Google Aktif
Amazon Aktif
epal Tidak aktif
Alibaba Aktif

Namakan semula (ρ)

Ganti nama adalah operasi yang tidak digunakan yang digunakan untuk menamakan semula atribut hubungan.

ρ (a / b) R akan menamakan semula sifat 'b' hubungan dengan 'a'.

Operasi kesatuan (υ)

UNION dilambangkan dengan simbol ∪. Ia merangkumi semua tupel yang terdapat di dalam jadual A atau di B. Ia juga menghilangkan tupel pendua. Jadi, set A UNION set B akan dinyatakan sebagai:

Hasilnya <- A ∪ B

Agar operasi kesatuan menjadi sah, syarat berikut mesti berlaku -

  • R dan S mestilah bilangan atribut yang sama.
  • Domain atribut perlu serasi.
  • Tuple pendua hendaklah dikeluarkan secara automatik.

Contohnya

Pertimbangkan jadual berikut.

Jadual A Jadual B
lajur 1 lajur 2 lajur 1 lajur 2
1 1 1 1
1 2 1 3

A ∪ B memberi

Jadual A ∪ B
lajur 1 lajur 2
1 1
1 2
1 3

Tetapkan Perbezaan (-)

- Simbol menandakannya. Hasil A - B, adalah hubungan yang merangkumi semua tupel yang berada di A tetapi tidak di B.

  • Nama atribut A harus sesuai dengan nama atribut di B.
  • Hubungan dua operasi A dan B harus sama ada serasi atau serasi dengan Kesatuan.
  • Ia harus ditentukan hubungan yang terdiri daripada tupel yang ada dalam hubungan A, tetapi tidak dalam B.

Contohnya

A-B
Jadual A - B
lajur 1 lajur 2
1 2

Persimpangan

Persimpangan didefinisikan oleh simbol ∩

A ∩ B

Mentakrifkan hubungan yang terdiri daripada sekumpulan semua tuple yang ada di A dan B. Walau bagaimanapun, A dan B mesti serasi dengan kesatuan.

Definisi Visual Persilangan

Contoh:

A ∩ B
Jadual A ∩ B
lajur 1 lajur 2
1 1

Produk Cartesian (X) dalam DBMS

Produk Cartesian dalam DBMS adalah operasi yang digunakan untuk menggabungkan lajur dari dua hubungan. Secara amnya, produk kartesian tidak pernah menjadi operasi yang bermakna ketika melakukan sendiri. Walau bagaimanapun, ia menjadi bermakna apabila diikuti oleh operasi lain. Ia juga dipanggil Cross Product atau Cross Join.

Contoh - produk Cartesian

σ lajur 2 = '1' (AXB)

Keluaran - Contoh di atas menunjukkan semua baris dari hubungan A dan B yang lajur 2 mempunyai nilai 1

σ lajur 2 = '1' (AXB)
lajur 1 lajur 2
1 1
1 1

Sertailah Operasi

Operasi bergabung pada dasarnya adalah produk kartesian diikuti oleh kriteria pemilihan.

Sertailah operasi dilambangkan dengan ⋈.

JOIN operasi juga membolehkan bergabung dengan tupel yang berkaitan dengan pelbagai hubungan.

Jenis GABUNGAN:

Pelbagai bentuk operasi bergabung adalah:

Batin Bergabung:

  • Theta turut serta
  • EQUI sertai
  • Sambungan semula jadi

Sambungan luar:

  • Kiri Luar Bergabung
  • Kanan Luar Bergabung
  • Sertai Luar Sepenuhnya

Penyertaan dalaman:

Dalam gabungan dalaman, hanya tupel yang memenuhi kriteria yang sesuai disertakan, sementara selebihnya dikecualikan. Mari kita pelajari pelbagai jenis Inner Joins:

Theta Sertai:

Kes umum operasi JOIN disebut gabungan Theta. Ia dilambangkan dengan simbol θ

Contohnya

A ⋈θ B

Theta join boleh menggunakan sebarang syarat dalam kriteria pemilihan.

Sebagai contoh:

A ⋈ A.column 2 > B.column 2 (B)
A ⋈ A. lajur 2> B. lajur 2 (B)
lajur 1 lajur 2
1 2

EQUI bergabung:

Apabila gabungan theta hanya menggunakan syarat kesetaraan, ia menjadi gabungan ekuiti.

Sebagai contoh:

A ⋈ A.column 2 = B.column 2 (B)
A ⋈ A. lajur 2 = B. lajur 2 (B)
lajur 1 lajur 2
1 1

EQUI join adalah operasi yang paling sukar untuk dilaksanakan dengan cekap menggunakan SQL dalam RDBMS dan satu sebab mengapa RDBMS mempunyai masalah prestasi penting.

BERSAMA ALAM (⋈)

Penggabungan semula jadi hanya dapat dilakukan jika ada atribut umum (lajur) antara hubungan. Nama dan jenis atribut mestilah sama.

Contohnya

Pertimbangkan dua jadual berikut

C
Bil Petak
2 4
3 9
D
Bil Kiub
2 8
3 27
C ⋈ D
C ⋈ D
Bil Petak Kiub
2 4 4
3 9 27

BERSAMA KELUAR

Dalam gabungan luar, bersama tupel yang memenuhi kriteria yang sepadan, kami juga menyertakan beberapa atau semua tupel yang tidak sesuai dengan kriteria.

Sambungan Luar Kiri (A B)

Dalam gabungan luar kiri, operasi membolehkan menyimpan semua tuple dalam hubungan kiri. Namun, jika tidak ada tupel yang sesuai ditemukan dalam hubungan yang tepat, maka atribut hubungan yang betul dalam hasil bergabung diisi dengan nilai nol.

Pertimbangkan 2 Jadual berikut

A
Bil Petak
2 4
3 9
4 16
B
Bil Kiub
2 8
3 18
5 75
A  B
A ⋈ B
Bil Petak Kiub
2 4 4
3 9 9
4 16 -

Sambungan Kanan Luar: (A B)

Dalam gabungan luar kanan, operasi membolehkan menjaga semua tuple dalam hubungan yang betul. Namun, jika tidak ada tupel yang sesuai ditemukan dalam hubungan kiri, maka atribut hubungan kiri dalam hasil bergabung diisi dengan nilai nol.

A  B
A ⋈ B
Bil Kiub Petak
2 8 4
3 18 9
5 75 -

Penyertaan Luar Penuh: (A B)

Dalam gabungan luar penuh, semua tupel dari kedua-dua hubungan dimasukkan dalam hasilnya, tanpa mengira keadaan yang sepadan.

A  B
A ⋈ B
Bil Kiub Petak
2 4 8
3 9 18
4 16 -
5 - 75

Ringkasan

Operasi (Simbol)

Tujuan

Pilih (σ)

Operasi SELECT digunakan untuk memilih subset tupel mengikut keadaan pemilihan yang diberikan

Unjuran (π)

Unjuran menghilangkan semua atribut hubungan input tetapi yang disebutkan dalam senarai unjuran.

Operasi Kesatuan (∪)

UNION dilambangkan dengan simbol. Ia merangkumi semua tuple yang terdapat dalam jadual A atau di B.

Tetapkan Perbezaan (-)

- Simbol menandakannya. Hasil A - B, adalah hubungan yang merangkumi semua tupel yang berada di A tetapi tidak di B.

Persimpangan (∩)

Persimpangan menentukan hubungan yang terdiri daripada sekumpulan semua tuple yang terdapat di A dan B.

Produk Cartesian (X)

Operasi Cartesian membantu menggabungkan lajur dari dua hubungan.

Inner Sertai

Inner join, hanya merangkumi tupel yang memenuhi kriteria yang sepadan.

Theta Sertai (θ)

Kes am operasi JOIN disebut gabungan Theta. Ia dilambangkan dengan simbol θ.

EQUI Sertai

Apabila gabungan theta hanya menggunakan syarat kesetaraan, ia menjadi gabungan ekuiti.

Penyertaan Semula Jadi (⋈)

Penggabungan semula jadi hanya dapat dilakukan jika ada atribut umum (lajur) antara hubungan.

Sambungan Luar

Dalam gabungan luar, bersama tupel yang memenuhi kriteria yang sepadan.

Sambungan Luar Kiri ( )

Dalam gabungan luar kiri, operasi membolehkan menyimpan semua tuple dalam hubungan kiri.

Gabungan Luar Kanan ( )

Dalam gabungan luar kanan, operasi membolehkan menjaga semua tuple dalam hubungan yang betul.

Penyertaan Luar Penuh ( )

Dalam gabungan luar penuh, semua tupel dari kedua-dua hubungan dimasukkan dalam hasil tanpa mengira keadaan yang sepadan.