Hai gann, kembali lagi di Index Attacker kali ini saya akan memberikan tutorial yang berkaitan dengan database MySQL. Yaitu Cara Menampilkan Isi dari 2 Table di MySQL [CLI]. Studi kasus :
Ada database dengan nama perpus. Didalamnya terdapat 2 table dengan nama buku dan peminjam. Administrator ingin menampilkan data nama peminjam, buku yang di pinjam beserta tanggal kapan di pinjam dan tanggal kapan harus di kembalikan. Adapun langkah langkah nya yaitu sebagai berikut.
Saya anggap kamu belum mempunyai database, maka buat database terlebih dahulu. Jika sudah maka bisa lewati langkah ini.
Membuat Database
Pertama tama sebelum membuat database ialah login ke mysql nya dulu dengan perintah :
root@yusuf32:~# mysql -u root -p
Nanti akan disuruh memasukkan password , masukkan password yang pernah di buat waktu instalasi mysql-server
Lalu masukkan query untuk membuat database: create database namadatabase;
mysql> create database perpus;
Query OK, 1 row affected (0.00 sec)
Lalu masukkan query untuk menggunakan database tersebut : use namadatabase;
mysql> use perpus;
Database changed
Membuat table beserta column nya
Lalu langkah selanjutnya adalah membuat table dan column (field): create namatable(field tipedata (panjang karakter) );
mysql> create table buku(isbn varchar(50), judul varchar(50), pengarang varchar(50));
Query OK, 0 rows affected (0.35 sec)
Lalu saya akan membuat satu table lagi
mysql> create table peminjam(isbn_buku varchar(50), nama varchar(50), tglpinjam date, tglkembali date);
Query OK, 0 rows affected (0.32 sec)
Lalu menampilkan table untuk memastikan table sudah di buat: show namatables;
mysql> show tables;
+------------------+
| Tables_in_perpus |
+------------------+
| buku |
| peminjam |
+------------------+
2 rows in set (0.00 sec)
Input data
Langkah selanjutnya adalah menginput data atau memasukkan data kedalam database dengan perintah: insert into namatable (field) values ('isi');
Lalu isi tabel yang satunya dengan perintah yang sama
mysql> insert into buku (isbn, judul, pengarang) values ('001', 'Belajar PHP dan MySQL', 'Ahmad1337');
Query OK, 1 row affected (0.32 sec)
Lalu isi tabel yang satunya dengan perintah yang sama
mysql> insert into peminjam (isbn_buku, nama, tglpinjam, tglkembali) values ('001', 'Yusuf', '2019-03-17', '2019-03-24');
Query OK, 1 row affected (0.00 sec)
Lalu menampilkan isi dari table buku dan table peminjam
mysql> select * from buku;
+------+-----------------------+-----------+
| isbn | judul | pengarang |
+------+-----------------------+-----------+
| 001 | Belajar PHP dan MySQL | Ahmad1337 |
| 002 | Linux VS Windows | Ajid |
| 003 | Visual Code | Andi |
| 004 | ini adalah buku | bambang |
| 005 | buku mahal | bams |
+------+-----------------------+-----------+
5 rows in set (0.00 sec)
mysql> select * from peminjam;
+-----------+---------+------------+------------+
| isbn_buku | nama | tglpinjam | tglkembali |
+-----------+---------+------------+------------+
| 001 | Yusuf | 2019-03-17 | 2019-03-24 |
| 002 | waluyo | 2019-03-17 | 2019-03-24 |
| 003 | ahmadi | 2019-03-17 | 2019-03-24 |
| 004 | nurhadi | 2019-03-17 | 2019-03-24 |
| 005 | aldo | 2019-03-17 | 2019-03-24 |
+-----------+---------+------------+------------+
5 rows in set (0.00 sec)
Menampilkan atau menggabungkan isi dari 2 table
untuk menampilkan isi dari 2 table saya menggunakan query inner join . Untuk perintah nya seperti ini: SELECT namatable1.*, namatable2.* FROM namatable1 INNER JOIN namatable2
ON namatable1.nama_kolom_join = namatable2.nama_kolom_join
Contoh nya seperti ini :
ON namatable1.nama_kolom_join = namatable2.nama_kolom_join
Contoh nya seperti ini :
mysql> select buku.*, peminjam.* from buku inner join peminjam on buku.isbn = peminjam.isbn_buku;
+------+-----------------------+-----------+-----------+---------+------------+------------+
| isbn | judul | pengarang | isbn_buku | nama | tglpinjam | tglkembali |
+------+-----------------------+-----------+-----------+---------+------------+------------+
| 001 | Belajar PHP dan MySQL | Ahmad1337 | 001 | Yusuf | 2019-03-17 | 2019-03-24 |
| 002 | Linux VS Windows | Ajid | 002 | waluyo | 2019-03-17 | 2019-03-24 |
| 003 | Visual Code | Andi | 003 | ahmadi | 2019-03-17 | 2019-03-24 |
| 004 | ini adalah buku | bambang | 004 | nurhadi | 2019-03-17 | 2019-03-24 |
| 005 | buku mahal | bams | 005 | aldo | 2019-03-17 | 2019-03-24 |
+------+-----------------------+-----------+-----------+---------+------------+------------+
5 rows in set (0.00 sec)
nahh kalo sudah seperti itu berarti sudah successfull , selamat mencoba semgoa berhasil.
Jika ada pertanyaan silahkan tanyakan lewat komentar. Oke sekian dari saya semoga bermanfaat :D
~ gJestam