Jl Srijaya Negara Bukit Besar Palembang 30139, Telpon : +62711‐353414
PROGRAM STUDI D3 JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK
Praktikum Basis Data Terapan 2
Hand On Lab 5
Menggunakan Sub Query dan Function
150 menit/ 3 jam
Lecturer : M. Miftakul Amin, S. Kom., M. Eng. Website : http://mafisamin.web.ugm.ac.id Tujuan : 1. Mahasiswa dapat menggunakan perintah SELECT untuk melakukan query data. 2. Mahasiswa dapat menggunakan fungsi built-in yang ada di dalam Oracle. Perlengkapan
: Oracle Express Edition 10g
Pada praktikum ini digunakan beberapa klausa yang menyertai perintah SELECT. Table pada pertemuan sebelumnya yang berjumlah 6 buah diasumsikan telah selesai dibuat dan diinput datanya. 1. Menggunakan Sub Query Sub query diartikan sebagai perintah SELECT yang di dalamnya terdapat perintah SELECT sebagai kondisi pemfilteran. Coba jalankan perintah berikut menggunakan aplikasi browser/apex. 1. Tampilkan seluruh data yang ada di tabel Jurusan dan program studi.
1 | H a l a m a n
2. Berdasarkan pada data di table jurusan dan prodi, jika diminta untuk menampilkan data program studi yang ada di jurusan teknik computer dapat dilakukan dengan perintah berikut.
Dapat juga ditampilkan dengan menggunakan perintah SUB QUERY sebagai berikut.
Dapat juga ditampilkan dengan menggunakan perintah SUB QUERY sebagai berikut.
3. Menggunakan klausa DISTINCT untuk menampilkan data yang duplikat ditampilkan cukup sekali saja. Bandingkan jika perintah yang digunakan adalah SELECT JENJANG FROM PRODI. Apakah yang berbeda dari kedua perintah tersebut?
2 | H a l a m a n
4. Untuk menampilkan data dengan kondisi rentang nilai tertentu, dapat digunakan perintah pemfilteran BETWEEN AND . Coba jalankan perintah berikut.
5. Menggunakan klausa NOT untuk menampilkan data yang merupakan negasi dari sebuah data tertentu.
6. Menggunakan klausa AND untuk menampilkan pemfilteran data yang melibatkan lebih dari 1 kondisi. Sebagai contoh menampilkan data program studi yang ada di jurusan teknik computer dan jenjangnya D3.
3 | H a l a m a n
Perintah tersebut juga sama dengan penggunaan sub query sebagai berikut.
Demikian juga sama dengan perintah berikut.
7. Mengurutkan data menggunakan klausa ORDER BY diikuti nama kolom. Pada perintah berikut menampilkan program studi berdasarkan kolom jenjang.
4 | H a l a m a n
8. Mengurutkan data berdasarkan nomor kolom. Pada contoh berikut data akan diurutkan berdasarkan kolom yang ke-2 yaitu nama prodi dan kolom ke-3 jenjang dan diurutkan dari AZ.
2. Menggunakan Fungsi Fungsi digunakan untuk memproses sebuah nilai balik tertentu. Di dalam oracle telah terdapat beragam fungsi yang siap digunakan oleh user secara langsung. 1. Mengetahui apakah kode ASCII untuk variable tertentu yang ada dalam karakter keyboard. Sebagai contoh ingin mengetahui kode ASCII untuk huruf A. SELECT ASCII('A') FROM DUAL;
2. Sebaliknya jika ingin mengetahui karakter dari kode ASCII tertentu dapat digunakan fungsi CHR. SELECT CHR(65), CHR(66) FROM DUAL;
3. Fungsi CONCAT digunakan untuk menggabungkan nilai tertentu. Sebagai contoh perintah berikut digunakan untuk menggabungkan kode program studi dan namanya. SELECT CONCAT(IDPRODI, NAMAPRODI) FROM PRODI;
4. Fungsi LOWER() digunakan untuk mengubah karakter menjadi huruf kecil semua. Sebagai contoh perintah berikut digunakan untuk menampilkan nama program studi menjadi huruf kecil semua. SELECT IDPRODI,LOWER(NAMAPRODI) AS PRODI FROM PRODI;
5 | H a l a m a n
5. Fungsi UPPER() digunakan untuk mengubah karakter menjadi huruf besar. Sebagai contoh perintah berikut digunakan untuk menampilkan nama program studi menjadi huruf besar semua. SELECT IDPRODI,LOWER(NAMAPRODI) AS PRODI FROM PRODI;
6. Fungsi INSTR() digunakan untuk mencari apakah sebuah karakter terdapat pada kalimat tertentu. Pada contoh berikut digunakan perintah untuk mencari posisi karakter huruf A dari nama prodi. SELECT NAMAPRODI, INSTR(NAMAPRODI,'A') AS POSISIA FROM PRODI;
7. Fungsi LENGTH() digunakan untuk mengetahui panjang sebuah string. Pada contoh berikut digunakan perintah untuk mengetahui panjang karakter dari nama program studi. SELECT NAMAPRODI, LENGTH(NAMAPRODI) AS PANJANG FROM PRODI;
8. Fungsi LTRIM(), TRIM(), RTRIM() digunakan untuk memotong spasi jika terdapat pada sebuah string. SELECT LTRIM(' ABA') AS POTONGKIRI, TRIM(' ABA ') AS POTONGKANANKIRI, RTRIM('ABA') AS POTONGKANAN FROM DUAL;
9. Fungsi REPLACE(x,y,z) digunakan untuk mengganti string y dengan string z pada string x. pada contoh berikut akan diberikan perintah untuk mengganti setiap kata TEKNIK adalam nama prodi menjadi TEKNOLOGI. SELECT NAMAPRODI, REPLACE(UPPER(NAMAPRODI),'TEKNIK','TEKNOLOGI') AS NAMAPRODIBARU FROM PRODI;
10. Fungsi SUBSTR(x,y,z) digunakan untuk menampilkan substring mulai dari posisi y sebanyak z pada karakter x. contoh berikut digunakan untuk menampilkan data nama program studi sebanyak 6 karakter awal saja. SELECT NAMAPRODI, SUBSTR(NAMAPRODI,1,6) AS NAMAPRODIBARU FROM PRODI;
11. Fungsi ABS() digunakan untuk mendapatkan nilai absolute. SELECT -10 AS "NILAI1", ABS(-10) AS "ABSOLUT" FROM DUAL;
12. Fungsi CEIL() untuk membulatkan nilai ke atas. SELECT CEIL(5.25) FROM DUAL;
13. Fungsi FLOOR() untuk membulatkan nilai ke bawah. SELECT FLOOR(5.25) FROM DUAL;
14. Fungsi MOD(x,y) digunakan untuk mendapatkan sisa pembagian antara x dibagi dengan y. SELECT MOD(7,2) FROM DUAL;
15. Dungsi ROUND() digunakan untuk melakukan pembulatan ke atas dan ke bawah sesuai dengan pembulatan terdekat. SELECT ROUND(7.2) AS "KEBAWAH", ROUND(7.6) AS "KEATAS" FROM DUAL;
6 | H a l a m a n
16. Fungsi TRUNC() digunakan untuk memotong nilai bilangan yang mengandung decimal. SQL> SELECT TRUNC(5.71), TRUNC(10.65634) FROM DUAL; TRUNC(5.71) TRUNC(10.65634) ----------- --------------5 10
17. Fungsi SYSDATE() digunakan untuk menampilkan data tanggal dari sistem. SQL> SELECT SYSDATE FROM DUAL; SYSDATE --------04-OCT-15
18. Fungsi MONTHS_BETWEEN() digunakan untuk mencari jumlah bulan dalam rentang waktu tanggal tertentu. SQL> SELECT MONTHS_BETWEEN('09-NOV-09','09-OCT-08') FROM DUAL; MONTHS_BETWEEN('09-NOV-09','09-OCT-08') --------------------------------------13
Tugas Praktikum : 1) Berikan perintah untuk menampilkan data berikut. 1.1 Tampilkan data mahasiswa yang ada di jurusan teknik computer menggunakan perintah SUB QUERY. Data yang ditampilkan adalah NAMA JURUSAN, NAMA PRODI, NIM, DAN NAMA MAHASISWA. 1.2 Tampilkan data mahasiswa yang menjadi bimbingan akademik dosen tertentu. Relasikan antara table dosen dan mahasiswa. Gunakan SUB QUERY untuk menampilkan data NIP, NAMA DOSEN, dan NAMA MAHASISWA. Diperiksa tanggal :_____________ Dosen Pengampu:
(M. Miftakul Amin, S. Kom., M. Eng.) NIP. 197912172012121001
7 | H a l a m a n
Nama Laboratorium :
Nomor Komputer :