Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Oracle Set Operator

Menggunakan Oracle Set Operator (Union,Union All,Intersect dan Minus/Except)

Operator Oracle Set dapat digunakan untuk memilih data dari beberapa tabel. Mereka menggabungkan hasil dari dua atau lebih kueri. Saat menggunakan operator Setel

a) Setiap klausa SELECT harus memiliki jumlah kolom yang sama

b) Kolom harus memiliki tipe data yang sama

c) Kolom harus ditentukan dalam urutan yang sama di semua klausa pilihan.

Ada 4 operator yang ditetapkan:

UNION Ini mengembalikan semua baris unik yang dikembalikan dari kedua kueri
SERIKAT SEMUA Ini mengembalikan semua baris termasuk duplikat
INTERSECT Ini hanya mengembalikan baris yang dikembalikan dari kedua kueri
MINUS Ini mengembalikan baris unik yang dipilih oleh kueri pertama tetapi bukan baris yang dipilih dari kueri kedua

Operator Serikat Oracle :

Operator Oracle Union digunakan untuk menggabungkan kumpulan hasil dari dua atau lebih  pernyataan SELECT. Ini menggabungkan kedua set hasil pernyataan SELECT dan menghapus baris duplikat di antara keduanya. Jadi pada dasarnya mengembalikan baris yang berbeda

PILIH nama_kota DARI CUST_DATA
UNION
PILIH nama_kota DARI SUPP_DATA;

Kueri ini akan menampilkan baris berbeda  kota dari “Cust_data” dan “Supp_data”

Oracle Union Semua

Oracle Union All operator digunakan untuk menggabungkan kumpulan hasil dari dua atau lebih  pernyataan SELECT. Ini menggabungkan kedua kumpulan hasil pernyataan SELECT dan kembali seperti apa adanya. Jadi mungkin berisi duplikat juga tergantung pada kumpulan data

SELECT city_name FROM CUST_DATA
UNION All
SELECT city_name FROM SUPP_DATA
;

Kueri ini akan menampilkan semua baris (Duplikat baris juga)  kota dari “Cust_data” dan “Supp_data”

Perbedaan antara  Union dan Union All di Oracle

Union mengembalikan baris yang berbeda, sedangkan Union semua mengembalikan semua baris. Jadi kita harus sangat berhati-hati saat memilih operator set ini

Oracle Intersect

Operator Oracle Intersect digunakan untuk menggabungkan kumpulan hasil dari dua atau lebih  pernyataan SELECT. Ini menggabungkan kedua set data pernyataan SELECT dan menampilkan baris umum yang berbeda di antara pernyataan. Jadi, jika record ada di satu query dan tidak ada di query lain, record tersebut akan dihilangkan dari hasil INTERSECT.

Hasilnya ditunjukkan oleh bagian yang diarsir pada gambar di atas

SELECT city_name FROM CUST_DATA
INTERSECT
SELECT city_name FROM SUPP_DATA
;

Kueri ini akan mengembalikan nama kota umum dari “Cust_data” dan “Supp_data”

Perbedaan Intersect Vs Join

1) Operator INTERSECT digunakan untuk mengambil record umum dari kedua klausa pilih Operator Intersect Sedangkan Gabung digunakan untuk mengambil data dari dua tabel berdasarkan kondisi yang ditentukan
2) INTERSECT melakukan perbandingan untuk semua kolom sementara INNER JOIN hanya kolom yang ditentukan.
3) Operator INTERSECT mengembalikan hasil yang hampir sama dengan klausa INNER JOIN berkali-kali.

Oracle Minus

Operator Sql minus digunakan untuk menggabungkan kumpulan hasil dari dua atau lebih  pernyataan SELECT. Ini menggabungkan pernyataan SELECT dan mengembalikan  baris  yang dipilih dari pernyataan pemilihan pertama, lalu menghapus dari kumpulan data semua baris yang diambil dari pernyataan pemilihan kedua

Hasilnya ditunjukkan oleh bagian yang diarsir pada gambar di atas

SELECT city_name FROM CUST_DATA
MINUS
SELECT city_name FROM SUPP_DATA
;

Kueri ini akan menampilkan  nama kota dari “Cust_data” dikurangi nama kota “Supp_data”

Di sini karena semua data yang dikembalikan dari pernyataan pilih adalah sama, maka tidak menghasilkan baris apa pun.

Mari masukkan satu baris berbeda di cust_data dan lihat hasilnya

Sekarang mari kita lihat apakah kita melakukan minus cust_data dari supp_data

SELECT city_name FROM SUPP_DATA
MINUS
SELECT city_name FROM CUST_DATA
;

Kami tidak mengurangi operator di Banyak RDBMS seperti sql server, mysql. Di sana kami menggunakan kecuali menggantikan minus dan memiliki fungsi yang sama dengan minus

Semua operator kumpulan sql ini valid untuk RDBMS yang digunakan di Market  seperti Oracle,mysql, sql server, Postgres, Teradata

Artikel Terkait
menghapus duplikat catatan di oracle :Tips dan cara Cara menghapus duplikat baris dari tabel Oracle . Berbagai opsi diberikan untuk menghapus baris duplikat tanpa masalah
Tutorial Oracle Sql :Berisi daftar semua artikel Oracle sql yang berguna. Jelajahi mereka untuk mempelajari tentang Oracle Sql bahkan jika Anda tahu Oracle Sql
Pertanyaan wawancara Oracle:Lihat halaman ini untuk 49 Pertanyaan dan jawaban Wawancara Oracle Teratas:Dasar-dasar, Oracle SQL untuk membantu Anda dalam wawancara. Materi tambahan juga disediakan
klausa di mana di Oracle :Membatasi kumpulan data, di mana klausa, di mana klausa dalam pernyataan sql, operator perbandingan
fungsi baris tunggal di Oracle :Lihat ini untuk mengetahui fungsi baris tunggal di sql,Data Oracle fungsi,Fungsi numerik dalam sql,Fungsi karakter dalam sql


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Contoh Kondisi Oracle IF

  2. Bertahan dari Audit Oracle

  3. Apakah ada cara untuk mendapatkan nomor baris di Mysql seperti rownum di Oracle

  4. Menggunakan kolom Oracle XMLType di hibernate

  5. peningkatan otomatis oracle dengan urutan dan pemicu tidak berfungsi dengan benar