UTS BASIS DATA

UTS Praktikum Basis Data


Nama: Mei Albert Zendrato

NIM  : 213100205

Prodi : Sistem Informasi


Kerjakan di dalam database Sistem_Pemesanan!

Langkah awal, masukkan data berikut ke tabel detil_pesan.

detil_pesan

id_pesan  id_produk  jumlah  harga 

1 MIE001  3 jumlah x dengan harga di ID PRODUK

2 ATK001 4 jumlah x dengan harga di ID PRODUK

3 ATK002 5 jumlah x dengan harga di ID PRODUK

4 ATK002  6 jumlah x dengan harga di ID PRODUK


SOAL!


Petunjuk: setiap soal discreenshootkan syntak dan hasil querynya.


1. Lakukan INNER JOIN dari semua tabel yang bisa dilakukkan inner join! (tidak ada ketentuan minimal, semakin banyak tentu semakin baik jika benar)

2. Lakukan LEFT JOIN untuk menampilkan id_pelanggan, nm_pelanggan, id_pesan, tgl_pesan

3. Tampilkan semua field dari penggabungan 3 tabel yang dimungkinkan karena adanya relasi tabel! (tidak ada ketentuan minimal, semakin banyak tentu semakin baik jika benar)

4. Salinlah syntak berikut "SELECT pesan.id_pesan, pesan.tgl_pesan, SUM(detil_pesan.jumlah) as jumlah FROM pesan, detil_pesan WHERE pesan.id_pesan=detil_pesan.id_pesan GROUP BY id_pesan;" hasilnya apa dan jelaskan!

5. Salinlah syntak berikut "SELECT id_pelanggan, nm_pelanggan FROM pelanggan WHERE id_pelanggan IN (SELECT id_pelanggan FROM pesan);" hasilnya apa dan jelaskan perhatikan dengan melihat tabel pelanggan.


Pembahasan:

Langkah pertama adalah melakukan insert, namun sebelum itu  tampilkan field tabel yang akan dilakukan insert untuk mengetahui field di dalamnya.


Dari field itu, isi record data berikut:
1 MIE001  3 jumlah x dengan harga di ID PRODUK
2 ATK001 4 jumlah x dengan harga di ID PRODUK
3 ATK002 5 jumlah x dengan harga di ID PRODUK
4 ATK002  6 jumlah x dengan harga di ID PRODUK
Untuk mentukan harganya, lihat dahulu harga pada tabel produk, kemudian kalikan dengan jumlah. 



INNER JOIN dari semua semua tabel yang bisa dilakukan inner join

SELECT pesan.id_pesan, pesan.tgl_pesan, faktur.id_faktur, faktur.tgl_faktor, pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pelanggan.alamat, pelanggan.telepon, pelanggan.email, detil_pesan.id_produk, detil_pesan.jumlah, detil_pesan.harga FROM pesan INNER JOIN faktur ON pesan.id_pelanggan = pelanggan.id_pelanggan INNER JOIN detil_pesan ON pesan.id_pesn = detil_pesan.id_pesan;


SELECT produk.id_produk, produk.nm_produk, produk.satuan, produk.harga, produk.stock, detil_pesan.id_pesan, detil_pesan.jumlah, detil_pesan.harga FROM produk INNER JOIN detil_pesan ON produk.id_produk = detil_pesan.id_produk;



LEFT JOIN untuk menampilkan id_pelanggan, nm_pelanggan, id_pesan, tgl_pesan

SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pesan.id_pesan, pesan.tgl_pesan FROM pelanggan LEFT JOIN pesan ON pelanggan.id_pelanggan = pesan.id_pelanggan;



Menampilkan semua field dari penggabungan 3 tabel yang dimungkinkan karena adanya relasi tabel

SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pelanggan.alamat, pelanggan.telepon, pelanggan.email, pesan.id_pesan, pesan.tgl_pesan, detil_pesan.id_produk, detil_pesan.jumlah, detil_pesan.harga FROM pelanggan, pesan, detil_pesan WHERE pelanggan.id_pelanggan = pesan.id_pelanggan AND pesan.id_pesan = detil_pesan.id_pesan;


SELECT pesan.id_pesan, pesan.tgl_pesan, detil_pesan.id_produk, produk.id_produk, produk.nm_produk, produk.satuan, produk.harga, produk.stock, detil_pesan.jumlah, detil_pesan.harga FROM pesam,detil_pesan, produk WHERE pesan.id_pesan = detil_pesan.id_pesan AND produk.id_produk = detil_pesan.id_produk;



Praktikkan syntak

SELECT pesan.id_pesan, pesan.tgl_pesan, SUM(detil_pesan.jumlah) as jumlah FROM pesan, detil_pesan WHERE pesan.id_pesan=detil_pesan.id_pesan GROUP BY id_pesan;


Ketika memasukan perintah tersebut, maka hasilnya adalah seperti gambar diatas.  Hasil yang ditampilkan berdasarka urutan waktu pemesan. GROUP BY digunakan untuk parameter berupa kelompak data. SUM akan menjumlahkan seluruh nilai yang menjadi parameternya.

Praktikkan syntak

SELECT id_pelanggan, nm_pelanggan FROM pelanggan WHERE id_pelanggan IN (SELECT id_pelanggan FROM pesan);


Hasilnya akan ditampilakan id_pelanggan dan nm_pelanggan yang pernah melakukan transaksi. Planggan dengan id_pelanggan UAA005 tidak tampil, karena belum melakukan pembelian barang.




Komentar

Postingan populer dari blog ini

Data Manipulation Language MySQL - Select, Insert, Delete, Update (Tugas 3)

Membuat Database, Tabel, dan Struktur Tabel dalam Database MySQL (Tugas 1)

Simulasi DRP Pada Wordpress