Modul 7
Modul 7
dari hasil 2 atau lebih query dari table yang memiliki fields yang sama. Dan juga kadang kita membutuhkan data yang memenuhi beberapa kondisi yang kita tentukan. MySQL menyediakan operator untuk operasi seperti yang tersebut diatas, yaitu operator UNION dan IN. Pada laporan praktikum ini akan dibahas mengenai bagaimana menggunakan operator UNION dan IN untuk mendapatkan data yang kita inginkan. Tujuan Dapat memahami sintaks perintah pada MySQL untuk melakukan SELECT dari beberapa table dengan operator UNION dan IN.
TEORI 1. UNION MySQL UNION adalah statemen yang mengkombinasi dua buah atau lebih resultset dari multi sql statemen SELCT sehingga menjadi satu buat resultset. UNION statemen memilki beberapa ketentuan sebagai berikut : a. Jumlah kolom/filed dari setia statemen SELECT harus sama; b. Tipe data kolom/field dari setiap statemen SELECT harus kompatibel. Secara default statemen UNION akan menghapus semua record duplikat dari setresult. Apabila anda iingin record duplikat tetap ditampilkan maka pada resultset tuliskan secara explicit UNION ALL. Format Penulisan : SELECT [nama kolom1],[nama kolom2],dst FROM [nama tabel1] UNION SELECT [nama kolom 1],[nama kolom2], dst FROM [nama tabel2]; Contoh :
Query : SELECT kota FROM table_pelanggan UNION SELECT kota FROM table_suplier;
Output :
2. IN Operator IN memungkinkan Anda untuk menentukan beberapa nilai dalam WHERE clause. Format Penulisan : SELECT [nama kolom1],[nama kolom2],dst FROM [nama table] WHERE [nama kolom] IN ([nilai1],[nilai2],); Contoh :
HASIL DAN PEMBAHASAN A. Hasil Percobaan Pada modul 7 ini terdapat pecobaan select data dengan bantuan operasi UNION dan IN sebagai berikut : Percobaan 1 : Membuat database prak7 beserta isi tabel terlebih dahulu
Percobaan 2 : SELECT menggunakan operator UNION Menampilkan seluruh kota yang ada pada tabel_pelanggan dan tabel_suplier.
Percobaan 3 : SELECT menggunakan operator IN Menampilkan seluruh data pada tabel_pelanggan dengan syarat provinsi bali atau jawa barat.
Jawaban :
Kondisi yang memungkinkan operator OR dapat digantikan dengan IN yaitu jika kita akan menyeleksi sebuah database dan menentukan beberapa nilai. Seperti misalnya kita akan menyeleksi data yang memiliki alamat denpasar dan bandung.
Jawaban :
SELECT menggunakan OR : SELECT [nama kolom1],[nama kolom2],dst FROM [nama tabel] WHERE alamat=Denpasar OR alamat=Bandung;
SELECT menggunakan IN : SELECT [nama kolom1],[nama kolom2],dst FROM [nama tabel] WHERE alamat IN (Denpasar , Bandung);
KESIMPULAN
Dari laporan praktikum ini pada pembahasan mengenai teori - teori dan hasil dari percobaan percobaan di atas, maka dapat disimpulkan administrator dapat menggunakan operator UNION dan IN sebagai berikut : Dengan menggunakan operator UNION dapat menggabungkan hasil dari beberapa query dan menghasilkan hasil yang baru dimana jika ada data yang sama akan di hapus salah satunya, dan jika ingin adanya perulangan data dalam hasilnya maka dapat menggunakan operator UNION ALL. Dengan menggunakan operator IN dapat memberikan beberapa nilai kondisi dalam klausa WHERE.
DAFTAR PUSTAKA
dengan
MYSQL.
Yogyakarta:
Yakub, 2008, Sistem Basis Data : Tutorial Konsep . Graha Ilmu: Yogyakarta.
Pemrograman
SQL
dan
Database
Server
Basis
Data
.Jurusan
Ilmu
Komputer.
10
LAMPIRAN 1. Buatlah database dengan nama prak7. CREATE DATABASE prak7; 2. Buatlah database yang berisi tabel beserta recordnya sesuai
diatas
yakni
tabel_suplier
dan
CREATE TABLE `tabel_pelanggan` ( `id_pelanggan` int(11) NOT NULL, `nama_pelanggan` varchar(50) DEFAULT NULL, `alamat` varchar(50) DEFAULT NULL, `kota` varchar(50) DEFAULT NULL, `provinsi` varchar(50) DEFAULT NULL, PRIMARY KEY (`id_pelanggan`) ); INSERT INTO table_pelanggan VALUES (1,isaraja,jalan ponegoro,medan,sumatera utara), (2,mikha,jalan ponegoro,bandung,jawa barat), (3,novita dewi,jalan patimura,badung,bali), (4,fatin,jalan teuku umar,surabaya,jawa timur), (5,seena,jalan hasanudin,padang,sumatera barat); CREATE TABLE `tabel_suplier` ( `id_suplier` int(11) NOT NULL, `nama_suplier` varchar(50) DEFAULT NULL, `alamat` varchar(50) DEFAULT NULL, `kota` varchar(50) DEFAULT NULL, `provinsi` varchar(50) DEFAULT NULL, PRIMARY KEY (`id_suplier`) ); INSERT INTO table_suplier VALUES(1,paloma,jalan angkasa,denpasar,bali), (2,gandaria,jalan patimura,sibolga,sumatera utara), (3,metro,jalan teuku umar,bandung,jawa barat), (4,global,jalan salwana,bukittinggi,sumatera barat), (5,mnc,jalan werdapura,denpasar,bali);
11
3. Tampilkan jumlah kota dari tabel_pelanggan dan tabel_suplier. SELECT COUNT(*) FROM(SELECT kota FROM tabel_pelanggan UNION SELECT kota FROM tabel_suplier) AS kota_gabungan; Hasil :
4. Tampilkan jumlah provinsi dari tabel_pelanggan dan tabel_suplier. SELECT COUNT(*) FROM(SELECT provinsi FROM tabel_pelanggan UNION SELECT provinsi FROM tabel_suplier) AS kota_gabungan; Hasil :
12
5. Tampilkan nama pelanggan dan suplier yang beralamat jalan ponegoro, jalan teuku umar, jalan patimura dengan menggunakan IN clause. SELECT nama_pelanggan AS nama, alamat FROM tabel_pelanggan WHERE alamat IN ('jalan ponegoro','jalan teuku umar','jalan patimura') UNION SELECT nama_suplier AS nama, alamat FROM tabel_suplier WHERE alamat IN ('jalan ponegoro','jalan teuku umar','jalan patimura'); Hasil :
13