Anda di halaman 1dari 7

Laporan Basis Data Toko Obat

1.Physichal Data Model Di bawah ini merupakan screenshot dari physical data model yang saya buat dari sebuah toko obat. Berikut screenshootnya :

Gambar 1 Physical Data Model Toko obat

2.Query Di bawah ini merupakan query dan screen-shot hasil untuk melakukan beberapa fungsi seperti yang sudah ditentukan sbb: 2.1. Menampilkan 10 Item terlaris Query :
SELECT tb_obat.`nama_obat` AS 'obat', COUNT(tb_rincian_penjualan.`id_obat`) AS 'Banyak Sewa' FROM tb_obat INNER JOIN tb_rincian_penjualan ON tb_obat.`id_obat`=tb_rincian_penjualan.`id_obat` GROUP BY nama_obat ORDER BY COUNT(tb_rincian_penjualan.`id_obat`) DESC limit 0,10

Dan di bawah ini merupakan screenshot dari querry dan result dari soal nomor 1.

Screenshot :

Gambar 2. Screenshot querry dan result 10 item terlaris

2.2. Menampilkan 10 Item Tidak Terlaris Di bawah ini merupakan querry dan screenshot dari fungsi menampilkan 10 item tidak terlaris,dimana pada querry ini saya menggunakan left join sebagai parameter untuk menggabungkan kedua table yang di select. Query :
SELECT tb_obat.`nama_obat` AS 'obat', COUNT(tb_rincian_penjualan.`id_obat`) AS 'Banyak terjual' FROM tb_obat LEFT JOIN tb_rincian_penjualan ON tb_obat.`id_obat`=tb_rincian_penjualan.`id_obat` GROUP BY nama_obat ORDER BY COUNT(tb_rincian_penjualan.`id_obat`) ASC

Dan di bawah ini adalah Screenshotnya :

Gambar 3. Screenshot 10 item tidak terlaris

2.3. Menampilkan Transaksi Mingguan Customer Dibawah ini merupakan query yang menampilkan transaksi pembelian yang dilakukan oleh customer perminggu, di bawah ini merupakan contoh sebuah laporan mingguan suatu perusahaan, dan pada kasus ini saya menggunakan tanggal 1-7 Januari 2011 sebagai contoh laporan mingguan Query:
SELECT MONTH(tgl_transaksi) AS 'MINGGU', COUNT(tgl_transaksi) AS 'BANYAK TRANSAKSI', SUM(tb_rincian_penjualan.harga_satuan*tb_penjualan.total) AS 'TOTAL TRANSAKSI' FROM tb_penjualan INNER JOIN tb_rincian_penjualan ON tb_penjualan.id_penjualan=tb_rincian_penjualan.id_penjualan WHERE tgl_transaksi BETWEEN '2011-01-01' AND '2011-01-07' GROUP BY MONTH(tgl_transaksi) ORDER BY MONTH(tgl_transaksi) ASC

Screenshot:

Gambar 4. Screenshot result query untuk menampilkan laporan mingguan

2.4.Menampilkan Transaksi Bulanan Berikut ini merupakan Query dan Screenshot untuk menampilkan laporan transaksi pembelian obat selama 1 bulan, serta total keseluruhan pada 1 bulan tersebut.Pada kasus ini saya menggunakan bulan febuari

Query : SELECT MONTH(tgl_transaksi) AS 'BULAN', COUNT(tgl_transaksi) AS 'BANYAK TRANSAKSI', SUM(tb_rincian_penjualan.harga_satuan*tb_penjualan.total) AS 'TOTAL TRANSAKSI' FROM tb_penjualan INNER JOIN tb_rincian_penjualan ON tb_penjualan.id_penjualan=tb_rincian_penjualan.id_penjualan WHERE tgl_transaksi BETWEEN '2011-01-01' AND '2011-02-01' GROUP BY MONTH(tgl_transaksi) ORDER BY MONTH(tgl_transaksi) ASC Screenshot :

Gambar 5. Screenshot result query menampilkan transaksi bulanan customer

2.5 Menampilkan Transaksi Customer per-tigabulan Berikut ini merupakan query untuk menampilkan transaksi selama tiga bulan dan yang saya gunakan adalah bulan Januari,Februari,dan Maret, dimana akan ditampilkan banyak transaksi dan total transaksi pada masing-masing bulan Query :
SELECT MONTH(tgl_transaksi) AS 'BULAN', COUNT(tgl_transaksi) AS 'BANYAK TRANSAKSI', SUM(tb_rincian_penjualan.harga_satuan*tb_penjualan.total) AS 'TOTAL TRANSAKSI' FROM tb_penjualan INNER JOIN tb_rincian_penjualan ON tb_penjualan.id_penjualan=tb_rincian_penjualan.id_penjualan WHERE tgl_transaksi BETWEEN '2011-01-01' AND '2011-04-01' GROUP BY MONTH(tgl_transaksi) ORDER BY MONTH(tgl_transaksi) ASC

Screenshot :

Gambar 6. Screenshot result query transaksi customer per-tigabulan

2.6 Menampilkan Transaksi Tahunan Customer Berikut ini merupakan query untuk menampilkan transaksi tahunan dari toko obat yang mencakup banyak transaksi dan total transaksi sepanjang tahun 2011 mulai dari bulan januari sampai dengan Desember. Query :
SELECT MONTH(tgl_transaksi) AS 'BULAN', COUNT(tgl_transaksi) AS 'BANYAK TRANSAKSI',

SUM(tb_rincian_penjualan.harga_satuan*tb_penjualan.total) AS 'TOTAL TRANSAKSI' FROM tb_penjualan INNER JOIN tb_rincian_penjualan ON tb_penjualan.id_penjualan=tb_rincian_penjualan.id_penjualan WHERE tgl_transaksi BETWEEN '2011-01-01' AND '2011-12-31' GROUP BY MONTH(tgl_transaksi) ORDER BY MONTH(tgl_transaksi) ASC

Screenshot :

Gambar 7. Screenshot result query untuk menampilkan transaksi tahunan customer

2.7 Frekuensi Transaksi Customer Mingguan Berikut merupakan query untuk menampilkan frekuensi transaksi yang dilakukan oleh customer dalam rentang satu minggu. Pada kasus ini saya menggunakan tanggal 1-7 januari 2011. Query :
SELECT tb_customer.nama AS 'NAMA CUSTOMER', COUNT(tb_penjualan.tgl_transaksi) AS 'BANYAK TRANSAKSI' FROM tb_customer INNER JOIN tb_penjualan ON tb_customer.id_customer=tb_penjualan.id_customer WHERE tgl_transaksi BETWEEN '2011-01-01' AND '2011-03-01' GROUP BY (tb_penjualan.id_customer) ORDER BY COUNT(tb_customer.id_customer) DESC

Screenshot :

Gambar 8. Screenshot result query frekuensi transaksi customer mingguan

2.8 Frekuensi Transaksi Customer Bulanan Berikut ini merupakan query untuk menampilkan frekuensi transaksi yang dilakukan customer dalam rentang waktu satu bulan. Pada kasus ini saya menggunakan contoh bulan Januari. Query:
SELECT tb_customer.nama AS 'NAMA CUSTOMER', COUNT(tb_penjualan.tgl_transaksi) AS 'BANYAK TRANSAKSI'

FROM tb_customer INNER JOIN tb_penjualan ON tb_customer.id_customer=tb_penjualan.id_customer WHERE tgl_transaksi BETWEEN '2011-01-01' AND '2011-03-01' GROUP BY (tb_penjualan.id_customer) ORDER BY COUNT(tb_customer.id_customer) DESC

Screenshot :

Gambar 9. Screenshot result query frekuensi transaksi customer bulanan

2.9 Customer dengan Transaksi Tertinggi Berikut ini merupakan query untuk menampilakan klien dengan transaksi paling tinggi selama tahun 2011.Dalam artian customer tersebut paling sering melakukan transaksi selama setahun. Query :
SELECT tb_customer.nama AS 'NAMA CUSTOMER', SUM(tb_rincian_penjualan.harga_satuan*tb_penjualan.total) AS 'TOTAL TRANSAKSI' FROM tb_customer INNER JOIN tb_penjualan ON tb_customer.id_customer=tb_penjualan.id_customer INNER JOIN tb_rincian_penjualan ON tb_penjualan.id_penjualan=tb_rincian_penjualan.id_penjualan WHERE tgl_transaksi BETWEEN '2011-01-01' AND '2011-012-31' GROUP BY (tb_customer.id_customer) ORDER BY SUM(tb_rincian_penjualan.harga_satuan*tb_penjualan.total) DESC

Screenshot:

Gambar 10. Screenshot result query menampilkan customer dengan transaksi tertinggi selama setahun

2.10 Frekuensi Penambahan Klien per Bulan

Berikut ini merupakan query untuk menampilkan pertambahan klien perbuan,maksudnya penambahan jumlah customer perbulan. Query :
SELECT MONTH(tgl_daftar) AS 'Bulan', YEAR(tgl_daftar) AS 'Tahun', COUNT(id_customer) AS 'Pertambahan Member' FROM tb_customer GROUP BY MONTH(tgl_daftar) ASC Screenshot:

Gambar 11. Screenshot result query penambahan customer perbulan

2.11 Contoh Penggunaan Statement Select dalam Select Berikut ini merupakan contoh penggunaan statement select dalam select.disini saya menerapkan pada menampilkan nama obat serta kategorinya pada table obat dengan kategori action pada tabel kategori Query :
SELECT nama_obat AS 'obat', tahun_produksi AS 'Tahun Pembuatan' FROM tb_obat WHERE id_kategori IN (SELECT id_kategori FROM tb_kategori WHERE keterangan ='antibiotik')

Sceenshot :

Gambar 12.Screenshot resut query penggunaan select dalam select

Anda mungkin juga menyukai