loading...

Tuesday 25 April 2017

Laporan PBD 9

Manajemen Data
A.   Tujuan Praktikum
1.     Mampu mengenal dan memahami Bahasa Pemograman MySQL.
2.     Dapat membuat database menggunaan MySQL.
B.   Alat dan Bahan Praktikum
1.     Personal Komputer
2.     Aplikasi MySQL
C.   Teori Singkat
SQL memberikan sebuah bentuk manajemen data untu dapat menghasilkan informasi sesuai dengan data yang diinginkan. Manajemen data yang dimaksud diantaranya, mengurutkan data sesuai abjad atau dari angka bilangan terbesar menuju bilangan terkecil, menghitung banyaknya record data pada suatu tabel, merubah nama kolom, mengganti atau merubah data yang telah ada, bahkan untuk menghasilkan informasi yang datanya diperoleh atau digenerate dari banyak tabel, yang dinamakan dengan query banyak tabel.
D.   Langkah Kerja
1.     Query Satu Tabel
a.     Merubah Nama Kolom
Query yang digunakan adalah CHANGE
Misalnya : Anda ingin mengganti nama kolom pada sebuah tabel dengan nama yang lain.
Bentuk umum:
ALTER TABLE nama tabel CHANGE nama_kolom_lama nama_kolom_baru tipedata(ukuran);
Contoh:
    Mengganti nama kolom Namamenjadi Nama_Mahasiswapada tabel dosen.


Contoh query:
mysql> ALTER TABLE mahasiswa CHANGE Nama Nama_Mahasiswa varchar(35);
   
b.    Mengganti Nama Tabel
Query yang digunakan adalah RENAME
Misalnya : Anda ingin mengganti nama tabel dengan nama yang baru.
Bentuk Umum:
    ALTER TABLE nama tabel lama RENAME nama tabel baru.
Contoh: mengganti nama tabel mahasiwa dengan tabel daftar_mahasiswa.

Contoh Query:
    mysql> ALTER TABLE mahasiswa RENAME daftar_mahasiswa;



c.      Mengurutkan Data
Misalnya, Anda ingin menampilkan data dengan urutan kolom tertentu, dan berdasarkan data tertentu Query yang digunakan adalah ORDER BY.
Bentuk Umum:
SELECT nama_kolom1, nama_kolom2, ...FROM nama tabel ORDER BY nama kolom.
Contoh 1:
Menampilkan data nama mahasiswa, nim dan tanggal lahir, dengan urutan data berdasarkan nama.
Contoh query:
mysql> SELECT nama_mahasiswa, nim, tanggal_lahir FROM mahasiswa ORDER BY nama_mahasiswa;
Daftar mahasiswa sebelum diurutkan:

Sedangkan daftar mahasiswa setelah diurutkan:

Contoh 2:
Menampilkan data dari kolom nim, nama mahasiswa dan alamat, dengan urutan nama dari urut terbesar atau secara urut turun (atau Z-A).
Contoh Query:
mysql> SELECT nama_mahasiswa, nim, tanggal_lahir FROM mahasiswa ORDER BY nama_mahasiswa DESC;


d.    Mengganti Data
Query yang digunakan adalah REPLACE
·        Digunakan untuk mengganti data dengan data baru pada baris yang sama.
·        Cara kerja hampir sama dengan INSERT
·        Jika baris yang dituju sudah berisi data, maka data tersebut akan dihapus dan diganti dengan data baru.
Bentuk umum:
REPLACE INTO nama tabel VALUES(data_kolom1, data_kolom2...,);
Contoh Query:
mysql>REPLACE INTO mahasiswa VALUES(‘22222’, ’Berubah’, ‘Ganti’, ‘Perempuan’, ‘Islam’, ’1997-02-27’);
Data mahasiswa sebelum di REPLACE:

Data mahasiswa setelah di REPLACE:

NOTE: Perubahan data hanya berlaku untuk data di PRIMARY KEY yang sama, keseluruhan data termasuk PRIMARY KEY suatu data juga diubah, maka hal ini hanya akan mengakibatkan PENAMBAHAN DATA, bukan PERUBAHAN DATA!
e.      Membatasi Jumlah Data
Query yang digunakan adalah LIMIT
Misalnya, Anda ingin menampilkan data dengan jumlah tertentu saja mengingat record data yang ada terlalu banyak.
Bentuk umum:
SELECT nama_kolom, FROM nama tabel LIMIT...;
Contoh:
Menampilkan data yang ada pada tabel mahasiswa dengan 3 record pertama saja.
Contoh query:
mysql> SELECT *from mahasiswa LIMIT 3;
Data di tabel mahasiswa jika ditampilkan seluruhnya:

Data di tabel mahasiswa jika dibatasi 3 data saja.


f.      Memilih Batas data antara...dan...
Query yang digunakan adalah BETWEEN
Misalnya untuk menampilkan data dengan batasan data atau nilai tertentu.
Bentuk umum:
SELECT nama_kolom1, nama_kolom2, ...FROM nama tabel WHERE nama kolom BETWEEN kriteria...AND...
Contoh:
mysql> SELECT nim, nama_mahasiswa, jenis_kelamin from mahasiswa WHERE nim BETWEEN ‘22220’ AND ‘150000’;
Data di tabel mahasiswa jika ditampilkan seluruhnya:

Data di tabel mahasiswa jika dibatasi antara nim 22220-150000:

g.     Menampilkan data dengan kriteria tertentu
Query yang digunakan adalah LIKE dan disimbolkan dengan ‘%’ yang dapat diletakkan di depan atau di belakang dari sebuah kriteria, dan diantaranya.
Bentuk umum:
SELECT nama_kolom FROM nama tabel WHERE nama kolom LIKE ‘%’ kriteria
Contoh:
Menampilkan nama mahasiswa yang memiliki akhiran huruf ‘i’.
Contoh Query:
mysql> SELECT  nama_mahasiswa, nim from mahasiswa WHERE nama_mahasiswa LIKE ‘%i’;


Bandingkan dengan jika kita ketikkan query sebagai berikut:

h.    Query banyak tabel
Digunakan untuk menghasilkan informasi pada suatu database, yang datanya diperoleh dari banyak tabel. Atau query yang dilakukan pada tabel yang lebih dari satu. Caranya:
·        Menggunakan perintah SELECT
·        Perhatikan hubungan atau relasi antara masing-masing tabel
·        Sertakan nama tabel melengkapi nama kolomnya
·        Penulisannya: tuliskan nama tabel  dan nama kolom bersama-sama dengan pemisah tanda titik (.)
Contoh:
·        dosen.nama_dsn à kolom nama dosen yang terdapat pada tabel dosen
·        matakuliah.nama_mk à kolom nama matakuliahyang terdapat pada tabel matakuliah
·        jadwal.kode_mk à kolom kode matakuliah yang terdapat pada tabel jadwal
·        mahasiswa.nim à kolom nim yang terdapat pada tabel mahasiswa
contoh: menampilkan informasi tentang data mahasiswa dan nilai matakuliahnya yang terdapat dalam database akademik.
Petunjuk:
    Relasi antara tabel mahasiswa dan tabel KRS.
Querynya:
mysql> SELECT  mahasiswa.nim, mahasiswa.nama_mahasiswa, KRS.Nilai FROM mahasiswa, KRS WHERE mahasiswa.nim=KRS.nim;


E.   EVALUASI DAN PENUGASAN
1.     Buatlah query untuk menampilkan data sebagai berikut:
a.     Nama mahasiswa, nim, tanggal lahir, jenis kelamin, untuk data mahasiswa yang perempuan saja.
b.     Nama mahasiswa dan dosen pembimbing proyek akhir
c.      Data nilai mahasiswa untuk semester ganjil, dan urutkan hasilnya berdasarkan NIM. Field yang digunakan: NIM, Nama, Kode matakuliah, Nama matakuliah, Nilai
d.     Data bimbingan skripsi mahasiswa meliputi Kode Dosen, NIM, nama dosen, NIM, Nama Mahasiswa. Batasi data yang ditampilkan hanya mahasiswa perempuan saja.

e.      Jadwal  kuliah, diurut berdasarkan hari.
2.     Apa perbedaan dan persamaan query berikut:
mysql> SELECT nim, nama_mahasiswa, jenis_kelamin from mahasiswa WHERE nim BETWEEN ‘16214017’ AND ‘16214026’;

mysql> SELECT nim, nama_mahasiswa, jenis_kelamin from mahasiswa WHERE nim NOT BETWEEN ‘16214017’ AND ‘16214026’;

mysql> SELECT nim, nama_mahasiswa, jenis_kelamin from mahasiswa WHERE NOT nim BETWEEN ‘16214017’ AND ‘16214026’;

 Perbedaan : Contoh yang pertama menampilkan NIM antara 16214017 sampai 16214026, sedangkan pada contoh 2 dan 3 menampilkan NIM selain 16214017 sampai 16214026.
Persamaan  : Ketiga contoh diatas sama-sama menampilkan query mahasiswa yaitu NIM, Nama_Mahasiswa dan Jenis_Kelamin.
3.     Dalam MySQL dikenal fungsi agregat yang disediakan untuk menghasilkan sebuah nilai berdasarkan sejumlah data. Fungsi agregat yang disediakan oleh MySQL sebagai berikut:
a.     AVG() atau AVG(DISTINCT)
     Fungsi AVG Digunakan untuk menampikan nilai rata-rata dari suatu kolom.
select avg(kolom) from nama_tabel;
b.     COUNT() atau COUNT(DISTINCT)
   Fungsi COUNT() digunakan untuk menampilkan jumlah record atau data.
   select count(*) from nama_tabel;
c.      MAX()
  Fungsi MAX() digunakan untuk menampilkan nilai maksimum dari beberapa record atau data.
select max(kolom) from nama_tabel;
d.     MIN()
  Fungsi MIN() digunakan untuk menampilkan data record terkecil dari beberapa record/data.
select min(kolom) from nama_tabel;
e.      SUM()
     Fungsi SUM() digunakan untuk menampilkan total jumlah sebuah data.
select sum(kolom) from nama_tabel; 
f.       SUM(DISTINCT)
   Digunakan untuk menampilkan total jumlah sebuah data yang berbeda.
g.     STD(), STDDEV() atau STDDEV_POP()
 Fungsi ini dapat kita gunakan untuk mendapatkan standar deviasi dari suatu kolom dalam suatu tabel.
h.     VARIANCE(), VAR_POP(), atau VAR_SAMP()

    Digunakan untuk mendapatkan varians populasi standar dari suatu kolom dalam suatu tabel.

No comments: