Database
 sql >> Teknologi Basis Data >  >> RDS >> Database

SQL Union – Panduan Komprehensif tentang Operator UNION

Saat menangani data dalam database, kita sering cenderung menggunakan operator yang ditetapkan dalam SQL, untuk mengambil data sesuai dengan kebutuhan kita dengan menggabungkan dua atau lebih pernyataan SELECT. Pada artikel tentang SQL UNION ini, saya akan membahas operator UNION yang digunakan untuk mengambil data dengan urutan sebagai berikut:

  • Apa itu operator SQL UNION?
  • Sintaks:
    1. Sintaks UNION
    2. UNIKAN SEMUA Sintaks
  • Perbedaan antara UNION dan UNION ALL
  • Contoh SQL UNION:
    1. Contoh Operator UNION
    2. Contoh operator UNION ALL
    3. UNION dengan SQL Alias
    4. UNION dengan klausa WHERE
    5. UNION ALL dengan klausa WHERE
    6. UNI dengan GABUNG
    7. SERIKAT SEMUA dengan BERGABUNG

Mari kita mulai!

Apa itu operator SQL UNION?

Seperti namanya, klausa operator/ ini digunakan untuk menggabungkan hasil dari dua atau lebih pernyataan SELECT. Di sini setiap pernyataan SELECT yang digunakan dalam pernyataan UNION harus memiliki jumlah kolom yang sama dalam urutan yang sama. Juga, semua kolom yang ada dalam pernyataan SELECT harus memiliki tipe data yang serupa.

Klausa UNION hanya memberikan nilai unik sebagai output. Untuk berjaga-jaga, Anda ingin nilai duplikat, maka Anda harus menggunakan klausa UNION ALL.

Berlanjut dalam artikel tentang SQL UNION ini, mari kita pahami sintaksnya.

Sintaks SQL UNION

Sintaks UNION

SELECT Column1, Column2, Column3, ..., ColumnN FROM Table1
UNION
SELECT Column1, Column2, Column3, ..., ColumnN FROM Table2;

UNI ALL Syntax

SELECT Column1, Column2, Column3, ..., ColumnN FROM Table1
UNION ALL
SELECT Column1, Column2, Column3, ..., ColumnN FROM Table2;

Melanjutkan artikel ini, mari kita pahami perbedaan antara UNION dan UNION ALL.

Perbedaan antara SQL UNION dan UNION ALL

UNION UNI SEMUA
Menggabungkan dua atau lebih kumpulan hasil dan tidak menyimpan nilai duplikat. Menggabungkan dua atau lebih kumpulan hasil dan mempertahankan nilai duplikat.
Syntax: UNION
Syntax: UNION ALL

Selanjutnya, dalam artikel tentang SQL UNION ini, mari kita pahami berbagai cara menggunakan operator ini.

Contoh SQL UNION dan UNION ALL

Untuk pemahaman yang lebih baik, saya akan mempertimbangkan tabel berikut untuk menunjukkan contoh yang berbeda.

Meja Karyawan

EmpID Nama EmpAge Kota Kode Pos Negara
1 Emma 23 Berlin 12109 Jerman
2 Rahul 26 Mumbai 400015 India
3 Aayra 24 New York 10014 AS
4 John 32 London E1 7AE Inggris Raya
5 Derek 29 New York 10012 AS

Tabel Proyek

ProjectID Nama Hari Kerja Kota Kode Pos Negara
1 Proyek 1 10 Berlin 12109 Jerman
2 Proyek 2 7 Mumbai 400015 India
3 Proyek 3 20 Delhi 110006 India
4 Proyek 4 15 Mumbai 400015 India
5 Proyek 5 28 Berlin 12109 Jerman

Mari kita mulai dengan contoh.

Contoh SQL UNION

Contoh Operator UNION

Tulis kueri untuk mengambil kota yang berbeda dari tabel Karyawan dan Proyek.

SELECT City FROM Employees
UNION
SELECT City FROM Projects
ORDER BY City;

Keluaran:

Kota

Berlin

Delhi

London

Mumbai

New York

Contoh UNION ALL Operator

Tulis kueri untuk mengambil kota dari tabel Karyawan dan Proyek. Di sini, nilai duplikat harus disertakan.

 
SELECT City FROM Employees
UNION ALL
SELECT City FROM Projects
ORDER BY City; 

Keluaran:

Kota

Berlin

Berlin

Berlin

Delhi

London

Mumbai

Mumbai

Mumbai

New York

New York

Berikutnya di artikel ini, mari kita pahami cara menggunakan klausa UNION dengan SQL Alias.

UNION dengan Alias ​​​​SQL

SQL Alias ​​​​digunakan untuk memberi nama sementara pada tabel atau kolom. Jadi, mari kita menulis kueri untuk mendaftar semua karyawan dan proyek unik.

SELECT 'Employee' AS Type, Name, City, Country
FROM Employees
UNION
SELECT 'Project', Name, City, Country
FROM Projects;

Keluaran:

Jenis Nama Kota Negara
Karyawan Emma Berlin Jerman
Karyawan Rahul Mumbai India
Karyawan Aayra New York AS
Karyawan John London Inggris Raya
Karyawan Derek New York AS
Proyek Proyek 1 Berlin Jerman
Proyek Proyek 2 Mumbai India
Proyek Proyek 3 Delhi India
Proyek Proyek 4 Mumbai India
Proyek Proyek 5 Berlin Jerman

UNION dengan klausa WHERE

Tulis kueri untuk mengambil kota-kota berbeda di India dan kode posnya dari tabel Karyawan dan Proyek.

SELECT City, PostalCode, Country FROM Employees
WHERE Country='India'
UNION
SELECT City, PostalCode, Country FROM Projects
WHERE Country='India'
ORDER BY City;

Keluaran:

Kota Kode Pos Negara
Delhi 110006 India
Mumbai 400015 India

UNION ALL dengan klausa WHERE

Tulis kueri untuk mengambil kota-kota India dan kode posnya dari tabel Karyawan dan Proyek, di mana nilai duplikat diperbolehkan

SELECT City, PostalCode, Country FROM Employees
WHERE Country='India'
UNION ALL
SELECT City, PostalCode, Country FROM Projects
WHERE Country='India'
ORDER BY City;

Keluaran:

Kota Kode Pos Negara
Delhi 110006 India
Mumbai 400015 India
Mumbai 400015 India
Mumbai 400015 India

Melanjutkan artikel ini, mari kita pahami cara menggunakan klausa UNION dan UNION ALL dengan JOINS. BERGABUNG dalam SQL adalah perintah yang digunakan untuk menggabungkan baris dari dua atau lebih tabel, berdasarkan kolom terkait di antara tabel tersebut.

UNION dengan BERGABUNG

Operator SQL UNION dapat digunakan dengan SQL JOINS untuk mengambil data dari dua tabel yang berbeda. Saya akan mempertimbangkan tabel berikut bersama dengan tabel Karyawan sebagai contoh.

Tabel Detail Proyek

PID Hari Kerja EmpID Biaya untukProyek
11 12 4 20.000
22 16 3 35000
33 30 1 60000
44 25 3 45000
55 21 1 50.000
SELECT  EmpID, Name, CostforProject
   FROM Employees
   LEFT JOIN ProjectDetails
   ON Employees.EmpID = ProjectDetails.EmpID
UNION
   SELECT  EmpID, Name, CostforProject
   FROM Employees
   RIGHT JOIN ProjectDetails
   ON Employees.EmpID = ProjectDetails.EmpID;

Keluaran:

EmpID Nama Biaya untukProyek
1 Emma 60000
1 Emma 50000
2 Rahul NULL
3 Aayra 35000
3 Aayra 45000
4 John 20000
5 Derek NULL

UNI SEMUA DENGAN GABUNG

Tulis kueri untuk mengambil EmpID, Name dan CostforProject dari tabel Employee dan ProjectDetails, di mana nilai duplikat diperbolehkan.

SELECT  EmpID, Name, CostforProject
   FROM Employees
   LEFT JOIN ProjectDetails
   ON Employees.EmpID = ProjectDetails.EmpID
UNION ALL
   SELECT  EmpID, Name, CostforProject
   FROM Employees
   RIGHT JOIN ProjectDetails
   ON Employees.EmpID = ProjectDetails.EmpID;

Keluaran:

EmpID Nama Biaya untukProyek
1 Emma 60000
1 Emma 50000
2 Rahul NULL
3 Aayra 35000
3 Aayra 45000
4 John 20000
5 Derek NULL
4 John 20000
3 Aayra 35000
1 Emma 60000
3 Aayra 35000
1 Emma 50000

Dengan ini, saya sampai di akhir artikel tentang SQL UNION. Saya harap Anda menikmati membaca artikel ini di SQL UNION. Kami telah melihat berbagai cara untuk menggunakan perintah UNION dan UNION ALL untuk membantu Anda menulis kueri. Jika Anda ingin mempelajari lebih lanjut tentang MySQL dan mengenal database relasional open source ini, lihat DBA MySQL kami Pelatihan Sertifikasi yang dilengkapi dengan pelatihan langsung yang dipimpin instruktur dan pengalaman proyek kehidupan nyata. Pelatihan ini akan membantu Anda memahami MySQL secara mendalam dan membantu Anda menguasai subjek tersebut.

Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar ”SQL UNION” dan saya akan menghubungi Anda kembali.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tata Kelola Keamanan Data

  2. Pembuatan Data Sintetis

  3. Cara Mendapatkan Tahun dari Tanggal di T-SQL

  4. Pertandingan Terdekat, Bagian 2

  5. Acara yang Diperpanjang untuk SSAS