Tutorial MySQL ini menjelaskan Cara Menggunakan Fungsi MySQL UNION ALL dengan sintaks dan contoh.
Deskripsi
Syntax
Syntax untuk fungsi MYSQL UNION ALL adalah:
|
1 2 3 4 5 6 7 |
SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions] UNION [DISTINCT] SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions]; |
Penjelasan Parameter
Kolom atau perhitungan yang ingin diambil kembali.
tables
Tabel yang ingin Anda ambil dari arsip. Paling tidak ada satu tabel yang tercantum dalam klausa FROM.
WHERE Conditions (Kondisi where)
Pilihan. Kondisi yang harus dipenuhi agar catatan bisa dipilih.
DISTINCT
Pilihan. Menghapus duplikat dari kumpulan hasil, namun penyertaan pengubah DISTINCT tidak memengaruhi set hasil operator UNION karena, secara default, operator UNION telah menghapus duplikat.
Catatan
- Harus ada jumlah ekspresi yang sama di kedua pernyataan SELECT.
- Nama kolom dari pernyataan SELECT pertama digunakan sebagai nama kolom untuk kumpulan hasil.
Contoh – Mengembalikan Satu Field
Berikut ini adalah contoh operator MySQL UNION yang mengembalikan satu field dari beberapa pernyataan SELECT (dan kedua field memiliki tipe data yang sama):
|
1 2 3 4 5 |
SELECT supplier_id FROM suppliers UNION ALL SELECT supplier_id FROM orders; |
Operator MySQL UNION ALL ini akan mengembalikan beberapa kali lipat supplier_id di set hasil Anda jika supplier_id muncul di tabel pemasok dan pesanan. Operator MySQL UNION ALL tidak menghapus duplikat. Jika Anda ingin menghapus duplikat, coba gunakan operator UNION MySQL.
Contoh – Menggunakan ORDER BY
Operator UNION MySQL dapat menggunakan klausa ORDER BY untuk memesan hasil query.
Sebagai contoh:
|
1 2 3 4 5 6 7 8 |
SELECT supplier_id, supplier_name FROM suppliers WHERE state = 'California' UNION ALL SELECT company_id, company_name FROM companies WHERE company_id > 1000 ORDER BY 2; |
Dalam operator MySQL UNION ALL ini, karena nama kolomnya berbeda antara dua pernyataan SELECT, akan lebih menguntungkan untuk mereferensikan kolom dalam klausa ORDER BY dengan posisinya di set hasil. Dalam contoh ini, kami telah mengurutkan hasilnya dengan supplier_name / company_name dalam urutan menaik, seperti yang dilambangkan dengan ORDER BY 2.
Field supplier_name / company_name berada pada posisi # 2 di set hasil.