Pertama-tama kita gunakan database Sistem_Pemesanan yang sudah dibuat sebelumnya kemudian inputkan data diatas ke dalam tabel detil_pesan. Untuk membuat tabel detil pesan, gunakan perintah DML create. CREATE TABLE nama_tabel (nama_kolom, tipe_kolom (value kolom)). Untuk lebih jelasnya dapat dilihat pada syntax dibawah ini:
Setelah berhasil membuat tabel detil_pesan, kita akan mengerjakan soal dibawah:
- Lakukan INNER JOIN dari semua tabel yang bisa dilakukan INNER JOIN! (tidak ada ketenuan minimal, semakin banyak tentu semakin baik jika benar).
- Lakukan LEFT JOIN untuk menampilkan id_pelanggan, nm_pelanggan, id_pesan, tgl_pesan!
- Tampilkan semua field dari penggabungan tiga tabel yang dimungkinkan karena adanya relasi tabel! (tidak ada ketenuan minimal, semakin banyak tentu semakin baik jika benar).
- Salinlah syntax berikut "SELECT pesan.id_pesan, pesan.tgl_pesan, SUM(detil_pesan.jumlah) as jumlah FROM pesan, detil_pesan WHERE pesan.id_pesan=detil_pesan GROUP BY id_pesan;" Hasilnya apa dan jelaskan!
- Salinlah syntax berikut "SELECT id_pelanggan, nm_pelanggan FORM pelanggan_WHERE id_pelanggan IN (SELECT id_pelanggan FROM pesan);" Hasilnya apa dan jelaskan perhatikan dengan melihat tabel pelanggan.
Pembahasan:
- Untuk melakukan INNER TABLE gunakan perintah SELECT nama_kolom_tampil FROM nama_tabel.1 INNER JOIN nama_tabel.2 ON nama_kolom_join_tabel.1 = nama_kolom_join_tabel.2;
Untuk lebih jelasnya, perhatikan syntax dibawah ini:
- LEFT JOIN digunakan untuk menampilkan tabel yang mana tabel sebelah kiri akan diprioritaskan untuk ditampilkan terlebih dahulu. Penggunaan perintah LEFT JOIN untuk menampilkan id_pelanggan, nm_pelanggan, id_pesan, tgl_pesan tertera pada syntax seperti gambar dibawah ini:
- Menyalin syntax berikut "SELECT pesan.id_pesan, pesan.tgl_pesan, SUM(detil_pesan.jumlah) as jumlah FROM pesan, detil_pesan WHERE pesan.id_pesan=detil_pesan GROUP BY id_pesan;"
Hasil yang akan tampil adalah seperti gambar berikut:
Pada tabel diatas, kita menggunakan perintah SUM & GROUP BY perintah tersebut akan mengumpulkan data di beberapa record dan mengelompokkan hasilnya pada satu atau lebih kolom, sedangkan untuk perintah SUM untuk menjumlahkan data yang dibutuhkan, pada tabel diatas yang dijumlahkan adalah jumlah transaksi yang tercantum pada tabel.
- Menyalin syntax berikut "SELECT id_pelanggan, nm_pelanggan FORM pelanggan_WHERE id_pelanggan IN (SELECT id_pelanggan FROM pesan);"
Hasil yang akan tampil adalah seperti gambar dibawah:
Pada tabel diatas ditampilkan nama pelanggan yang pernah melakukan transaksi. Pada syntax diatas kolom yang akan ditambilkan adalah id_pelanggan dan nm_pelanggan. Bisa dilihat bahwa nm_pelanggan Ekalawya tidak muncul, dikarenakan Ekalawya belum pernah melakukan transaksi.
Sekian dari saya, semoga bermanfaat. Terimakasih 😃
Tidak ada komentar:
Posting Komentar