Mohon tunggu...
Natalis Ransi
Natalis Ransi Mohon Tunggu... Mahasiswa - learn and share

Iman, pengharapan dan kasih...

Selanjutnya

Tutup

Inovasi

Cartesian Product sebagai Salah Satu Tools pada Perancangan Basis Data

26 April 2019   16:20 Diperbarui: 26 April 2019   18:13 618
+
Laporkan Konten
Laporkan Akun
Kompasiana adalah platform blog. Konten ini menjadi tanggung jawab bloger dan tidak mewakili pandangan redaksi Kompas.
Lihat foto
Gambar 1. Visualisasi ERD

Tulisan ini kembali membahas tentang tahapan perancangan sebuah sistem informasi dengan mengambil studi kasus dari referensi buku berjudul Designing Management Information Systems karya Hans van der Heijden. Tulisan sebelumnya berjudul "Visualiasi ERD Menggunakan MySQL Workbench" dapat Anda baca melalui link https://www.kompasiana.com/natalisransi/5cac95b695760e7a282fa982/visualiasi-erd-menggunakan-mysql-workbench. 

Tulisan ini merupakan lanjutan dari tulisan tersebut sekaligus akan memberikan salah satu solusi untuk me-'retrieve' informasi berupa perintah SQL dari basis data yang sudah dirancang. Adapun informasi yang akan di-'retrieve' dapat dilihat pada buku referensi halaman 66 pada tabel 5.1 sample table with transaction data.

Adapun hasil informasi yang akan dihasilkan dapat dilihat pada Gambar 2. Perhatikan bahwa setiap kolom pada tabel berasal dari 4 buah tabel, yaitu order, customer, line_item, dan product. Jadi SQL yang akan dihasilkan paling tidak akan memuat keempat tabel tersebut. 

Gambar 2. Hasil yang diinginkan
Gambar 2. Hasil yang diinginkan

Agar mudah dipahami, saya mencoba melakukan langkah demi langkah untuk mencapai hasil akhir yang diinginkan. Pertama, lakukan cartesian product untuk tabel line-item dengan tabel order, hasilnya kita sebut saja sebagai tabel a. Kedua, lakukan cartesian product tabel a tersebut dengan tabel product, hasilnya kita sebut saja sebagai tabel b. Ketiga, lakukan cartesian product  tabel b tersebut dengan tabel customer, dan lakukan project untuk setiap atribut yang diminta sesuai Gambar 2. 

Adapun atribut yang dimaksud adalah atribut order_id yang berasal dari tabel order, atribut name yang berasal dari tabel customer, atribut name dan price yang berasal dari tabel product,  dan terakhir atribut quantity yang berasal dari tabel line_item.  SQL parser secara lengkap akan diberikan pada tulisan berikutnya.

Salam

Mohon tunggu...

Lihat Konten Inovasi Selengkapnya
Lihat Inovasi Selengkapnya
Beri Komentar
Berkomentarlah secara bijaksana dan bertanggung jawab. Komentar sepenuhnya menjadi tanggung jawab komentator seperti diatur dalam UU ITE

Belum ada komentar. Jadilah yang pertama untuk memberikan komentar!
LAPORKAN KONTEN
Alasan
Laporkan Konten
Laporkan Akun