PRAKTIKUM DATABASE

1. Create Table tb_pengguna

Sebelum membuat table telah dibuat database terlebih dahulu dengan command "create database namaDB;" Setelah berhasil di lanjutkan dengan membuat table seperti contoh tb_pengguna dengan field: userid, nama, email, phone. setelah berhasil cek untuk melihat table dengan command "desc nama_table;"  Jika semuanya berhasil akan seperti pada gambar berikut:

2. Added Unique Into Table

Disini saya tambahkan uniq di email, unique itu fungsinya agar data yang di dalam table tidak sama. contoh penggunaan uniq dengan command "ALTER TABLE `tb_pengguna` ADD UNIQUE INDEX `idx_uniq_tb_pengguna` (`email`);" setelah berhasil akan muncul "UNI" pada email. untuk lebih jelasnya dapat dilihat pada gambar berikut:

3. Added Index Into Table

Selanjutnya kita menambahkan index untuk nama dan phone, index itu fungsinya agar mempercepat mencarian. Dengan command seperti di bawah berikut:

4. Edit Field Data Type

Saya akan mengganti Type Data phone yang berasal INT menjadi BIGINT, dengan lebih jelasnya seperti berikut :

5. Insert Data Into Table tb_pengguna

Selanjutnya saya akan menambahkan data kedalam table tb_pengguna, disini saya menambahkan 6 data dengan command :

" INSERT INTO `tb_pengguna` VALUES ('salsa.amelia', 'Salsa Amelia', 'salsaamelia@student.com', '082319887654'), ('novi.putri', 'Novi Putri Agistiani', 'novicmtq06@student.com', '0813109007889'), ('dwi.gita', 'Dwi Gita Anggraeni', 'dwigitaanggraeni@student.com', '088809050987'), ('sintha.wulan', 'Sintha Nur Wulan', 'sinthawulan11@student.com', '083823510987'), ('kharisya.mergianti', 'Kharisya Mergianti', 'kharisyamer@student.com', '083806237654'), ('gita.suci', 'Gita Suci Oktaviani', 'gita.suciokta@student.com', '083176252323'); "

Dengan hasilnya dapat dilihat pada gambar berikut :

6. Create Table tb_team

Lalu saya menambahkan 1 table (tb_team) dengan field : id_team, nama_team, id_koordinator. untuk lebih jelasnya pada gambar berikut :

7. Create Table tb_koordinator

Setelah tb_team, saya membuat 1 table lagi jadi jumlah table ada 3. membuatnya sama seperti sebelum sebelumnya, yang saya buat disini yaitu (tb_koordinator) dengan field : id_koordinator, nama. agar lebih jelas bisa di lihat pada gambar berikut : 

8. Add Constraint FOREIGN KEY

Disini saya akan menghubungkan table menggunakan FOREGIGN KEY. Saya akan menggambungkan table tb_team dan tb_koordinator dengan command seperti pada gambar berikut : 

9. Insert Into Table tb_team And tb_koordinator

Saya akan menambahkan data pada table tb_team dan tb_koordinator, sama saja seperti sebelumnya untuk menambahkan data. agar lebih jelas dapat dilihat pada dua gambar berikut :


10. Get Data For Each Table Created for all fields

Disini hanya menampilkan semua data pada table dengan command " select * from nama_table; " maka semua data yang ada pada table tersebut akan muncul.

11. Get Data For Each Table Created for some fields

Disini saya akan mengambil satu data dari semua table, contohnya saya mengambil data email dari table tb_pengguna, nama_team dari table tb_team, dan nama dari table tb_koordinator, dengam menggunakan command " select nama_data from nama_table;"

12. Get Data From Tables Created Using Filter

Using filter yaitu untuk memfilter sebuah data pada table, dapat dilihat pada gambar ada beberapa command yang digunakan agar cammand yang di gunakan tidak itu itu saja, untuk lebih jelasnya dapat di lihat pada gambar berikut :

13. Get Data From Table tb_team And tb_koordinator Using Inner Join

Disini saya akan menggabungkan dua table yaitu tb_team dan tb_koordinator, dengan menggunakan inner join yang lebih jelasnya dapat dilihat pada gambar berikut :

14. Get Data From Table tb_team And tb_koordinator Using Left Join

Left join menggabungkan semua baris dari table kiri dengan baris yang cocok dari table kanan berdasarkan kondisi yang ditentukan. Jadi disini saya akan menggabungkan dua table menggunakan left join, untuk lebih jelasnya dapat dilihat pada gambar berikut.

15. Get Data From Table tb_team And tb_koordinator Using Right Join

Left join menggabungkan semua baris dari table kanan dengan baris yang cocok dari table kiri berdasarkan kondisi yang ditentukan. Jika tidak ada baris yang cocok pada table kiri, maka nilai NULL akan d tampilkan. Jadi disini saya akan menggabungkan dua table menggunakan right join, untuk lebih jelasnya dapat dilihat pada gambar berikut.


16. Rename Tb_pengguna To Tb_anggota     

Untuk mengubah nama tabel database dari Tb_pengguna menjadi Tb_anggota, Anda dapat menggunakan perintah SQL berikut:



Perintah ini akan mengubah nama tabel Tb_pengguna menjadi Tb_anggota di dalam database. Harap diperhatikan bahwa hal ini akan mempengaruhi semua query atau referensi ke tabel menggunakan nama lama, sehingga pastikan untuk memperbarui nama tersebut.
                                                                          
17. Add Column Team On Tb_anggota         

Untuk menambahkan kolom "Team" pada tabel Tb_anggota, Anda dapat menggunakan perintah SQL berikut:


Perintah ini akan menambahkan kolom "Team" dengan tipe data INT . Anda dapat mengganti tipe data dan panjang maksimum sesuai kebutuhan Anda. Pastikan untuk memperbarui semua query atau kode yang terkait dengan tabel Tb_anggota setelah menambahkan kolom baru ini.
                
18. Add Relation Between Tb_anggota And Tb_team 

Untuk menambahkan relasi antara tabel Tb_anggota dan Tb_team, Anda dapat menggunakan perintah SQL berikut:


Perintah ini akan menambahkan constraint foreign key (kunci asing) pada kolom "Team_id" di tabel Tb_anggota yang merujuk ke kolom "id" di tabel Tb_team. Dengan begitu, setiap nilai "Team_id" di Tb_anggota harus cocok dengan nilai "id" di Tb_team.

Pastikan bahwa kolom "Team_id" di Tb_anggota dan kolom "id" di Tb_team memiliki tipe data yang sama dan ukuran yang cocok. Juga pastikan bahwa tabel Tb_team sudah ada sebelum menambahkan constraint foreign key ini. Jika tidak, Anda harus membuat tabel Tb_team terlebih dahulu sebelum menambahkan relasi ini.

Setelah menambahkan relasi, pastikan bahwa semua query atau kode terkait dengan kedua tabel tersebut sudah diperbarui sesuai dengan relasi baru ini.
                         
19. Truncate All Table  

Untuk menghapus semua data di dalam tabel tetapi mempertahankan struktur tabel, Anda dapat menggunakan perintah SQL TRUNCATE. Berikut adalah contoh perintah untuk menghapus semua data di semua tabel dalam database:


Perintah ini akan menghapus semua data yang ada di dalam tabel Tb_anggota, Tb_team dan Tb_koordinator, tetapi mempertahankan struktur tabel tersebut. Pastikan untuk melakukan backup data sebelum melakukan perintah truncate, karena data yang dihapus tidak bisa dikembalikan kembali.

Perlu diingat bahwa perintah TRUNCATE tidak bisa digunakan untuk menghapus data dari tabel yang memiliki relasi dengan tabel lain dan foreign key constraint, kecuali jika foreign key constraint dihapus terlebih dahulu. Sebelum melakukan truncate pada tabel yang memiliki relasi, pastikan untuk mempertimbangkan konsekuensi yang mungkin timbul dan pastikan untuk melakukan backup data terlebih dahulu.
                     
20. Insert Data Into Table tb_koordinator least 5 data   

Berikut adalah contoh perintah SQL untuk memasukkan minimal 5 data ke dalam tabel Tb_koordinator:


Perintah ini akan memasukkan 5 data ke dalam tabel Tb_koordinator dengan kolom-kolom id_koordinator dan nama. Anda dapat menyesuaikan data yang dimasukkan dengan kebutuhan Anda, dan pastikan bahwa nilai yang dimasukkan sesuai dengan tipe data dan batasan panjang maksimum kolom yang telah ditetapkan.

21. Insert Data Into Table tb_team least 6 data with 2 data null for column id_koordinator  

Berikut adalah contoh perintah SQL untuk memasukkan minimal 6 data ke dalam tabel Tb_team, dengan 2 data memiliki nilai null pada kolom "id_koordinator":



Perintah ini akan memasukkan 6 data ke dalam tabel Tb_team dengan kolom-kolom id_team, nama_team dan id_koordinator. Dua data terakhir memiliki nilai null pada kolom "id_koordinator". Anda dapat menyesuaikan data yang dimasukkan dengan kebutuhan Anda, dan pastikan bahwa nilai yang dimasukkan sesuai dengan tipe data dan batasan panjang maksimum kolom yang telah ditetapkan.

22. Insert Data Into Table tb_anggota least 60 data with some of =  field team from tb_team and some field team with null values             

Berikut adalah contoh perintah SQL untuk memasukkan minimal 60 data ke dalam tabel Tb_anggota, dengan beberapa data memiliki nilai null pada kolom "id_team", dan beberapa data lainnya dihubungkan dengan data dari tabel Tb_team:




Perintah ini akan memasukkan 60 data ke dalam tabel Tb_anggota dengan kolom-kolom userid, nama, email, phone dan team. Dan ada beberapa data yang memiliki nilai null pada data team. Anda dapat menyesuaikan data yang dimasukkan dengan kebutuhan Anda, dan pastikan bahwa nilai yang dimasukkan sesuai dengan tipe data dan batasan panjang maksimum kolom yang telah ditetapkan.

23. Get Data From 3 All Table With Null Data From Table Tb_koordinator      

Berikut adalah contoh perintah SQL untuk mendapatkan data dari 3 tabel, dengan data yang memiliki nilai null pada kolom "id_koordinator" di tabel Tb_koordinator:


Perintah ini akan mengambil data dari tabel Tb_anggota, Tb_team, dan Tb_koordinator, dengan menggunakan operasi LEFT JOIN untuk menggabungkan data dari ketiga tabel tersebut. Data yang diambil hanya yang memiliki nilai null pada kolom "id_koordinator" di tabel Tb_koordinator. Hasilnya akan menampilkan kolom Nama_Anggota, Alamat, Nama_Tim, dan Nama_Koordinator (dari tabel Tb_koordinator). Anda dapat menyesuaikan kolom yang ingin ditampilkan atau menambahkan kondisi lain sesuai kebutuhan Anda.
   
24. Get Data From 3 All Table Without Null Data From Table Tb_koordinator 

Berikut adalah contoh perintah SQL untuk mendapatkan data dari 3 tabel, dengan data yang tidak memiliki nilai null pada kolom "id_koordinator" di tabel Tb_koordinator:


Perintah ini akan mengambil data dari tabel Tb_anggota, Tb_team, dan Tb_koordinator, dengan menggunakan operasi LEFT JOIN dan JOIN untuk menggabungkan data dari ketiga tabel tersebut. Data yang diambil hanya yang tidak memiliki nilai null pada kolom "id_koordinator" di tabel Tb_koordinator. Hasilnya akan menampilkan kolom nama, team, dan koordinator (dari tabel Tb_koordinator). Anda dapat menyesuaikan kolom yang ingin ditampilkan atau menambahkan kondisi lain sesuai kebutuhan Anda.

25. Get Data only field fullname from tb_koordinator and fullname from tb_anggota without null data   

Berikut adalah contoh perintah SQL untuk mendapatkan data hanya dari kolom "Nama" pada tabel Tb_koordinator dan Tb_anggota, dengan hanya menampilkan data yang tidak memiliki nilai null pada kedua tabel:


Perintah ini akan mengambil data dari tabel Tb_anggota, Tb_team, dan Tb_koordinator, dengan menggunakan operasi JOIN untuk menggabungkan data dari ketiga tabel tersebut. Data yang diambil hanya yang memiliki nilai yang tidak null pada kolom "Nama" di kedua tabel. Hasilnya akan menampilkan kolom Nama_Koordinator dan Nama_Anggota. Anda dapat menyesuaikan kolom yang ingin ditampilkan atau menambahkan kondisi lain sesuai kebutuhan Anda.

26. Get Data only field fullname from tb_koordinator and fullname from tb_anggota with null data        

Berikut adalah contoh perintah SQL untuk mendapatkan data hanya dari kolom "Nama" pada tabel Tb_koordinator dan Tb_anggota, dengan hanya menampilkan data yang memiliki nilai null pada salah satu atau kedua tabel:



Perintah ini akan mengambil data dari tabel Tb_anggota, Tb_team, dan Tb_koordinator, dengan menggunakan operasi LEFT JOIN untuk menggabungkan data dari ketiga tabel tersebut. Data yang diambil hanya yang memiliki nilai null pada salah satu atau kedua kolom "Nama" di kedua tabel. Hasilnya akan menampilkan kolom Nama_Koordinator dan Nama_Anggota. Anda dapat menyesuaikan kolom yang ingin ditampilkan atau menambahkan kondisi lain sesuai kebutuhan Anda.

27. Get Data From 3 All Table Sort By Fullname 

Berikut adalah contoh perintah SQL untuk mendapatkan data dari 3 tabel, dengan mengurutkan hasil berdasarkan kolom "Nama" (fullname) secara alfabetis:



Perintah ini akan mengambil data dari tabel Tb_anggota, Tb_team, dan Tb_koordinator, dengan menggunakan operasi JOIN untuk menggabungkan data dari ketiga tabel tersebut. Hasilnya akan diurutkan berdasarkan kolom "Nama" secara alfabetis, terlebih dahulu berdasarkan kolom "Nama_Koordinator", kemudian berdasarkan kolom "Nama_Anggota", dan terakhir berdasarkan kolom "Nama_Tim". Anda dapat menyesuaikan kolom yang ingin ditampilkan atau menambahkan kondisi lain sesuai kebutuhan Anda.

28. Count The Number Of Members Based On The Team 

Berikut adalah contoh perintah SQL untuk menghitung jumlah anggota berdasarkan tim pada tabel Tb_anggota:


Perintah ini akan mengambil data dari tabel Tb_anggota dan Tb_team, dengan menggunakan operasi JOIN untuk menggabungkan data dari kedua tabel tersebut. Selanjutnya, akan dihitung jumlah anggota untuk setiap tim menggunakan fungsi COUNT() dan hasilnya akan dikelompokkan berdasarkan kolom "Nama_Tim". Hasilnya akan menampilkan kolom Nama_Tim dan Jumlah_Anggota. Anda dapat menyesuaikan kolom yang ingin ditampilkan atau menambahkan kondisi lain sesuai kebutuhan Anda.

29. Count The Number Of Members Based On Fullname On Tb_koordinator That Has Members More Than Or Equal To 5.              

Berikut adalah contoh perintah SQL untuk menghitung jumlah anggota berdasarkan nama koordinator pada tabel Tb_anggota yang memiliki lebih dari atau sama dengan 5 anggota:


Perintah ini akan mengambil data dari tabel Tb_anggota, Tb_team, dan Tb_koordinator, dengan menggunakan operasi JOIN untuk menggabungkan data dari ketiga tabel tersebut. Selanjutnya, akan dihitung jumlah anggota untuk setiap koordinator menggunakan fungsi COUNT() dan hasilnya akan dikelompokkan berdasarkan kolom "Nama_Koordinator". Kondisi HAVING digunakan untuk memfilter data yang memiliki jumlah anggota lebih dari atau sama dengan 5. Hasilnya akan menampilkan kolom Nama_Koordinator dan Jumlah_Anggota. Anda dapat menyesuaikan kolom yang ingin ditampilkan atau menambahkan kondisi lain sesuai kebutuhan Anda.
  
30. Create View From Data On Point 26    

Berikut adalah contoh perintah SQL untuk membuat view dari hasil query pada poin 26:
       



Perintah ini akan membuat sebuah view bernama "v_anggota_koordinator" yang memuat data dari tabel Tb_anggota, Tb_team, dan Tb_koordinator dengan menggunakan operasi JOIN untuk menggabungkan data dari ketiga tabel tersebut. Selanjutnya, hasilnya akan diurutkan berdasarkan kolom "Nama_Koordinator", kemudian berdasarkan kolom "Nama_Anggota", dan terakhir berdasarkan kolom "Nama_Tim". View ini dapat digunakan untuk memudahkan akses dan penggunaan data pada aplikasi atau sistem yang terkait. Anda dapat menyesuaikan perintah CREATE VIEW sesuai dengan kebutuhan Anda.

31. Create Temporary Table From Data On Point 26   

Berikut adalah contoh perintah SQL untuk membuat temporary table dari hasil query pada poin 26:



Perintah ini akan membuat sebuah temporary table bernama "temp_anggota_koordinator" yang memuat data dari tabel Tb_anggota, Tb_team, dan Tb_koordinator dengan menggunakan operasi JOIN untuk menggabungkan data dari ketiga tabel tersebut. Selanjutnya, hasilnya akan diurutkan berdasarkan kolom "Nama_Koordinator", kemudian berdasarkan kolom "Nama_Anggota", dan terakhir berdasarkan kolom "Nama_Tim". Temporary table ini hanya akan ada sementara selama sesi koneksi ke database dan akan dihapus secara otomatis setelah sesi tersebut berakhir. Anda dapat menyesuaikan perintah CREATE TEMPORARY TABLE sesuai dengan kebutuhan Anda.

32. Truncate Table Temporary        

Berikut adalah contoh perintah SQL untuk menghapus semua data dari temporary table yang telah dibuat pada poin sebelumnya:
                              

Perintah ini akan menghapus semua data yang ada di temporary table "temp_anggota_koordinator", tetapi struktur dan definisi temporary table tersebut masih tetap ada dan dapat digunakan kembali untuk menyimpan data baru jika dibutuhkan selama sesi koneksi ke database masih berlangsung. Anda dapat menyesuaikan perintah TRUNCATE TABLE sesuai dengan nama temporary table yang ingin Anda hapus datanya.

33. Insert Data Into Table Temporary From View 

Anda tidak dapat melakukan insert data ke dalam temporary table dari view karena view hanyalah representasi virtual dari data yang ada pada tabel asli. View hanya menampilkan data dari tabel asli yang telah diproses atau diubah sedemikian rupa, sehingga tidak memiliki data yang sebenarnya. Sebaliknya, Anda dapat melakukan SELECT data dari view dan menyimpannya ke dalam temporary table menggunakan perintah INSERT INTO. Berikut adalah contoh perintah SQL untuk melakukan SELECT dari view dan menyimpan hasilnya ke dalam temporary table:


Perintah ini akan melakukan SELECT dari view "v_anggota_koordinator" dan menyimpan hasilnya ke dalam temporary table "temp_anggota_koordinator" dengan kolom-kolom yang sama. Anda dapat menyesuaikan perintah INSERT INTO dan SELECT sesuai dengan nama view dan temporary table yang Anda miliki.

34. Add Column Captain Using Data Type Boolean  

Berikut adalah contoh perintah SQL untuk menambahkan kolom "Captain" dengan tipe data boolean pada tabel "Tb_anggota":


Perintah ini akan menambahkan kolom "Captain" pada tabel "Tb_anggota" dengan tipe data boolean. Kolom ini akan secara otomatis memiliki nilai default NULL pada setiap baris data yang ada pada tabel. Anda dapat menyesuaikan perintah ALTER TABLE sesuai dengan nama tabel dan kolom yang ingin Anda tambahkan.

35. Update Data tb_anggota For Rach Team Have 1 Captain    

Berikut adalah contoh perintah SQL untuk melakukan update pada data di tabel "tb_anggota" agar setiap tim memiliki satu anggota yang menjadi kapten:


Perintah ini akan melakukan update pada kolom "Captain" pada tabel "tb_anggota". Untuk setiap tim, anggota dengan userid paling kecil akan dianggap sebagai kapten tim tersebut. Anggota yang bukan kapten akan memiliki nilai kolom "Captain" diubah menjadi false. Perintah ini menggunakan subquery dengan fungsi ROW_NUMBER() untuk memetakan setiap anggota ke dalam suatu partisi berdasarkan id_tim, kemudian menentukan nomor urut setiap anggota di dalam partisi tersebut. Anggota dengan nomor urut ke-1 di setiap partisi akan dianggap sebagai kapten timnya. Anda dapat menyesuaikan perintah UPDATE sesuai dengan nama tabel dan kolom yang Anda miliki.



36. Add Column jenis_kelamin Using Data Type Enum    

Berikut adalah contoh perintah SQL untuk menambahkan kolom "jenis_kelamin" dengan tipe data ENUM pada tabel "tb_anggota":


Perintah ini akan menambahkan kolom "jenis_kelamin" pada tabel "tb_anggota" dengan tipe data ENUM yang memiliki dua pilihan nilai: "L" dan "P". Kolom ini diatur dengan opsi NULL, sehingga setiap baris data pada tabel harus memiliki nilai pada kolom ini. Anda dapat menyesuaikan perintah ALTER TABLE sesuai dengan nama tabel dan kolom yang ingin Anda tambahkan, serta pilihan nilai ENUM yang sesuai dengan kebutuhan.

37. Update Data tb_anggota For Column jenis_kelamin

Berikut adalah contoh perintah SQL untuk melakukan update pada kolom "jenis_kelamin" pada tabel "tb_anggota":




Perintah ini akan menambah nilai kolom "jenis_kelamin" menjadi "P" dan "L" pada semua baris data pada tabel "tb_anggota" . Anda dapat menyesuaikan perintah UPDATE sesuai dengan nama tabel, kolom, serta kondisi dan nilai yang ingin Anda ubah pada data.

38. Get Data From 3 All Table Sort By Fullname From Tb_anggota Alphabetically

Berikut adalah contoh perintah SQL untuk mendapatkan data dari tiga tabel "tb_koordinator", "tb_team", dan "tb_anggota" dan mengurutkannya berdasarkan nama lengkap (fullname) dari tabel "tb_anggota" secara alfabetis:



Perintah ini akan menggabungkan tiga tabel "tb_koordinator", "tb_team", dan "tb_anggota" menggunakan JOIN dan mengambil kolom "fullname" dari tabel "tb_anggota", serta kolom "name" dari tabel "tb_team" dan "fullname" dari tabel "tb_koordinator". Data yang diambil akan diurutkan secara alfabetis berdasarkan kolom "fullname" dari tabel "tb_anggota". Anda dapat menyesuaikan perintah SELECT dan JOIN sesuai dengan nama tabel dan kolom yang Anda gunakan pada database Anda.


Komentar

Postingan populer dari blog ini

Transaction Control Language (TCL)

Perintah Untuk Mengetahui CPU, RAM, DISK, dan Utilisasi Semua Komponen pada Linux