Disyorkan, 2024

Pilihan Editor

Perbezaan Antara JOIN dan UNION dalam SQL

JOIN dan UNION adalah klausa dalam SQL, yang digunakan untuk menggabungkan data dua atau lebih hubungan. Tetapi cara mereka menggabungkan data dan format hasil yang diperoleh, berbeza. Klausa JOIN menggabungkan sifat dua hubungan untuk membentuk tupel yang dihasilkan sedangkan, klausa UNION menggabungkan hasil dari dua pertanyaan. Marilah kita membincangkan perbezaan antara JOIN dan UNION dengan bantuan carta perbandingan yang ditunjukkan di bawah.

Carta Perbandingan

Asas untuk PerbandinganJOINUNION
AsasJOIN menggabungkan ciri-ciri tupel yang hadir dalam dua hubungan yang berbeza yang berkongsi beberapa medan atau sifat biasa.UNION menggabungkan tupel hubungan yang ada dalam pertanyaan.
KeadaanJOIN boleh digunakan apabila kedua-dua hubungan yang terlibat mempunyai sekurang-kurangnya satu sifat umum.UNION berlaku apabila bilangan lajur yang hadir dalam pertanyaan adalah sama dan atribut yang sama mempunyai domain yang sama.
JenisINNER, FULL (OUTER), LEFT JOIN, HUBUNGAN KANAN.UNION dan UNION SEMUA.
KesanPanjang tupel yang dihasilkan lebih berbanding dengan panjang tupel hubungan yang terlibat.Bilangan tupel yang dihasilkan lebih berbanding dengan bilangan tupel yang hadir dalam setiap hubungan yang terlibat dalam pertanyaan.
Rajah

Definisi JOIN

Klausa JOIN dalam SQL menggabungkan tupel dari dua hubungan atau jadual yang menghasilkan saiz tuple yang lebih panjang. Tupel yang dihasilkan mengandungi atribut dari kedua-dua hubungan tersebut. Atribut digabungkan berdasarkan sifat-sifat umum di antara mereka. Jenis-jenis JOIN dalam SQL adalah INNER JOIN, JOIN JOIN, JOIN BANYAK, JOIN FULL OUTER.

INNER JOIN menggabungkan tuple dari kedua-dua jadual selagi terdapat atribut yang sama antara keduanya. LEFT JOIN menghasilkan semua tuple dari jadual kiri dan sepadan tuple dari jadual kanan. RIGHT JOIN menghasilkan semua tuple dari jadual kanan dan hanya tuple padanan dari jadual kiri. FULL OUTER JOIN menghasilkan semua tuple dari kedua meja walaupun mereka mempunyai sifat yang sesuai atau tidak.

INNER JOIN sama dengan JOIN. Anda juga boleh menggugurkan kata kunci INNER dan hanya menggunakan JOIN untuk melakukan INNER JOIN.

Definisi UNION

UNION adalah satu set operasi di SQL. UNON menggabungkan hasil daripada dua pertanyaan. Hasil UNION termasuk tupel dari kedua hubungan yang ada dalam permintaan. Keadaan yang mesti dipenuhi mengambil UNION dari dua hubungan adalah:

  1. Kedua-dua hubungan mesti mempunyai bilangan atribut yang sama.
  2. Domain dari atribut yang sepadan mesti sama.

Terdapat dua jenis UNION yang UNION dan UNION SEMUA . Hasil yang diperoleh menggunakan UNION tidak termasuk pendua. Sebaliknya, hasil yang diperoleh menggunakan UNION SEMUA mengekalkan pendua.

Perbezaan Utama Antara JOIN dan UNION dalam SQL

  1. Perbezaan utama antara JOIN dan UNION ialah JOIN menggabungkan tupel dari dua hubungan dan tupel yang dihasilkan termasuk sifat dari hubungan tersebut. Sebaliknya, UNION menggabungkan hasil daripada dua pertanyaan SELECT.
  2. Fasal JOIN hanya terpakai apabila kedua-dua hubungan yang terlibat mempunyai sekurang-kurangnya satu sifat yang sama di kedua-dua. Di sisi lain, UNION berlaku apabila kedua-dua hubungan mempunyai bilangan atribut yang sama dan domain yang berkaitan dengan atribut adalah sama.
  3. Terdapat empat jenis JOIN INNER JOIN, JOIN JOIN, HUBUNGAN KANAN, JOIN JOIN FULL. Tetapi terdapat dua jenis UNION, UNION dan UNION SEMUA.
  4. Dalam JOIN, tuple yang dihasilkan mempunyai saiz yang lebih besar kerana ia termasuk atribut dari kedua-dua hubungan tersebut. Di sisi lain, dalam UNION jumlah tupel meningkat sebagai hasilnya termasuk tupel dari hubungan yang ada dalam pertanyaan.

Kesimpulan:

Kedua-duanya adalah operasi penggabungan data yang digunakan dalam situasi yang berbeda. JOIN digunakan apabila kita ingin menggabungkan atribut dua hubungan yang mempunyai sekurang-kurangnya satu atribut yang sama. UNION digunakan apabila kita ingin menggabungkan tupel dua hubungan yang ada dalam pertanyaan.

Top