• Tidak ada hasil yang ditemukan

1.3 Alat dan Bahan - 3. SQL Query

N/A
N/A
Protected

Academic year: 2018

Membagikan "1.3 Alat dan Bahan - 3. SQL Query"

Copied!
8
0
0

Teks penuh

(1)

Modul 4

SQL 1

1.1 Tujuan

a. Mahasiswa dapat mengenal Sintak das ar SQL b. Mahasiswa dapat mengoperasikan Sintak das ar SQL

1.2 Materi

1.4 Prosedur Praktikum

a. Peserta membaca dan mempelajari materi praktikum sebelumny a b. Instruktur menerangkan dan menjelaskan teori dan cara kerja c. Peserta mempraktikan materi percobaan

d. Peserta membuat penyelesaian terhadap soal latihan

1.5 Teori

Dasar-da sar SQL

SQL menyediakan peritah dan fungsi dalam jumlah yang cukup bany ak untuk menunjang aktifit as yang berhubungan dengan penelitian dan manipulasi data pada DBMS. Berikut ini akan diuraikan mengenai dasar-dasar SQL. Deklarasi atau perintah dalam SQL dikategorik an menjadi dua yaitu DDL ( data definition language ) dan DML ( data manipulation language ), kategori ini didasarkan pada karakteristik dan fungsi dari masing -masing.

DDL ( data definition language )

Sebagaimana telah dijelaskan pada modul 2, DDL adalah bagian dari SQL yang digunakan untuk mendefinisikan data dan obyek pada b asis data. Perintah-perintah yang tergolong pada kategori ini adalah:

PERINTAH KETERA NGA N

CREA TE TABLE

Mengubah atau menyisipkan kolom ke tabel Menghapus tabel dari basis data

Menghapus index

Memberi izin akses pada pemakai

DML ( data manipulation language )

DML adalah bagian dari SQL y ang digunak an untuk memulihkan dan memanipulasi data. Perintah ini digunakan untuk memberikan query dan perubahan yang dilakukan di dalam tab el. Perintah-perintah yang tergolong dalam kategori ini adalah :

PERINTAH KETERA NGA N

SELECT

Menyisipkan baris pada tabel Menghapus baris pada tabel Mengubah isi kolom pada tabel Menuliskan perubahan pada disk

(2)

Tipe data digunakan ketika membuat suatu tabel, pemakai harus menentukan informasi tertent u pada saat pembuatan tabel. Ada beberapa tipe data yang disimpan dalam basis data, diantaranya adalah :

INTE GER KETERA NGA N

Integer dengan niali 0 at au 1

Nilai interger antara –2.147.483.648 s/d 2.147. 483.647

Nilai ant ara –32. 768 s/d 32. 767 Nilai ant ara 0 s/d 255

Akurasi angk a tetap ant ara –10^38-1s/d 10^38-1 Data moneter dari –2^63 s/d 2^63-1, dengan tingk at akurasi hingga sepersepuluh ribu unit moneter -214.748,3648 s/d 214.748,3647 dengan tingk at akurasi sepersepuluh ribu unit moneter

-1.79E+ 308 s/d 1.79E+308 -3.40E+ 38 s/d 3.40E+38

1 januari 1753 s/d 31 desember 9999 1 januari 1900 s/d 6 juni 2079

RUPA -RUPA KETERA NGA N

CURSOR TIMES TAMP

UNIQUE IDE NTIFIE R

Referensi ke kursosr

Angka eklusif yang dikenali oleh basas data Pengenal global yang eklusif

STRING KETERA NGA N

CHA R VARCHAR TE XT

Field tetap dengan ukuran max 8000 byte Field tetap dengan ukuran max 8000 byte Variabel dengan ukuran 2^31-1 byte

UNICODE STRING KETERA NGA N NCHAR

NVARCHA R

NTE XT

Karakter unicode dengan ukuran 4000 byte Karter unicode dengan ukuran berfariasi 4000 byte Variaber berukuran 2^30-1 byte

BINA RY STRING KETERA NGA N BINA RY

VARBINARY IMAGE

Ukuran tetap hingga 8000 byte Ukuran bervariasi 8000 byte

Ukuran bervariasi hingga 2^31-1 byte

Ekspre si dan Operator pada SQL

Pada S QL operator bertindak berdasark an operand, yaitu elemen yang dianalisa oleh operator. Terdapat dua jenis operator, yaitu operator unary yang bertindak berdasarkan satu operand saja, dan operator binary yang bertindak berdasarkan dua atau lebih operator. Apabila pada sebuah ekspresi terdapat lebih dari satu operator, maka operator-operator tersebut akan dievaluasi berdasarkan urutan sebagai berikut:

 + ( positif ), - ( negatif ), ~ ( bitwise NOT )

Sebuah ekspresi SQL dasar sebenarny a hanya terdiri dari tiga klausa yaitu; klausa where, from, dan

(3)

 Klausa select : digunakan untuk menetapkan daftar atribut yang diinginkan sebagai query.

 Klausa from : digunakan untuk menetapkan tabel ( atau gabungan t abel ) yang akan ditelusuri selama query data dilakukan.

 Klausa where : digunakan untuk predikat ( sebagai kriteria ) yang harus dipenuhi dalam memperoleh hasil query.

Sintaks ( cara penulisan ) pada ekspresi SQL dasar yang memanfaatkan tiga klausa tersebu t adalah : select A1 [ ,A2, …,An]

from T1 [ , T2, …,Tn] [ where P ]

keterangan :

A1, A2, …, An : daftar atribut T1, T2, …, Tn :daftar tabel

P : predikat query

[ ] : tanda opsional ( boleh digunak an boleh tidak )

Select

Sesuai dengan penjelasan di atas bahwa klaus a select digunakan untuk menetapkan daftar at ribut yang dinginkan sebagai hasil query, maka berikut ini akan dijelaskan lebih lanjut tentang klausa select dengan menyertakan contohnya. Sebagai contoh pada tabel mahasiswa berikut:

1.1.1.1.1.1 TABEL 1 : MAHASISWA

NIM NAMA SEX ASAL TGL.LHR FAK PRODI

9961001 BUDI L KUDUS 02/02/ 80 MIPA BIOLOGI

9961002 NINA P BLORA 03/11/ 79 SASTRA INDONESIA

9961003 ABI L ACEH 30/10/ 78 TI TI

9961004 DONI L BANTUL 23/07/ 81 MIPA ILKOM

9961005 ANI P PATI 07/06/ 78 MIPA ILKOM

Cont oh perint ah select:  Cont oh 1

select NAMA

1.1.1.2 from MAHASISWA

Ekspresi diat as memerintahkan untuk menampilkan nama mahasiswa dari tabel mahasiswa yang telah ada. Sehingga tampilannya :

NAMA BUDI NINA ABI DONI ANI

 Cont oh 2

select NIM, NA MA, SE X from MAHASISWA

Ekspresi diatas memberikan perintah untuk menampilkan NIM, nama mahasiswa, dan jenis kelaminnya dari tabel mahasiswa. Tampilannya :

NIM NAMA SEX

9961001 BUDI L

9961002 NINA P

9961003 ABI L

9961004 DONI L

9961005 ANI P

 Cont oh 3

select di stinct SE X

from MAHASISWA

(4)

sama hanya ditampilkan satu saja. Keunikan diatas hany a untuk nilai at ribut yang disebutkan dalam klausa select, bukan pada k eseluruhan atribut yang ada di t abel yang disebutkan pada klausa form. Tampilan dari contoh di atas adalah :

SEX L P

 Cont oh 4

select *

from MAHASISWA

Ekpresi diatas menampilkan seluruh atribut yang ada pada tabel yang disebutkan pada klausa form. Tampilannya :

NIM NAMA SEX ASAL TGL_LHR FAK PRODI

9961001 BUDI L KUDUS 02/02/ 80 MIPA BIOLOGI

9961002 NINA P BLORA 03/11/ 79 SASTRA INDONESIA

9961003 ABI L ACEH 30/10/ 78 TI TI

9961004 DONI L BANTUL 23/07/ 81 MIPA ILKOM

9961005 ANI P PATI 07/06/ 78 MIPA ILKOM

 Cont oh 5

select NIM, NAMA as NAMA_MHS, SE X as JENIS_KELAMIN from MAHASISWA

Fungsi dari ekspresi as pada select adalah untuk mengganti tampilan header ( kepala tampilan tabular ). Tampilannya menjadi :

NIM NAMA_MHS JENIS_KELAMI N

9961001 BUDI L

9961002 NINA P

9961003 ABI L

9961004 DONI L

9961005 ANI P

Where

Klausa ini digunakan untuk menetapkan predikat atau kriteria yang harus dipenuhi dalam menampilkan query. Klaus a ini boleh tidak digunak an, yang artinya query dilak ukan untuk semua record di dalam tabel yang disebutkan pada klausa from. Berikut ini akan diberikan c ontoh bes erta penjelasan dari pemanfaatan klausa where. Contoh- contoh yang akan diberikan mengacu pada tabel kuliah berik ut ini:

TABEL KULIAH

KODE_KUL NAMA_KULIAH 1.1.1.3 SEM EST ER

1.1.1.4 S K S

1.1.1.5 KODE_D OSEN

M001 BASIS DA TA 6 3 L022

M002 OR-K OM 3 3 L023

P001 SIMULASI 6 2 L024

F001 SIS TEM BERKAS 4 3 L025

K001 PANCAS ILA 3 2 L026

 Cont oh 1

select * from KULIAH

where KODE_KUL = ‘ M001 ‘

(5)

KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOS EN

M001 BASIS DA TA 6 3 L022

 Cont oh 2

Select *

From KULIAH

Where SEMESTER = 6 and SKS >= 3

Ekspresi diatas menerapk an penggunaan predikat dengan operator relasi, serta mengkombinasikannya dengan operator logika. Maksud dari ekspresi diatas adalah menampilkan semua at ribut dari tabel kuliah yang termasuk dalam kriteria semester 6 dan memiliki jumlah sks lebih dari atau sama dengan 2. Nilai 6 dan 3 diatas tidak diapit dengan t anda kutip tunggal. Hal ini dikarenakan nilai tersebut bertype numeric ( sesuai dengan type atributnya ). Tampilannya :

KODE_KUL NAMA_KULIAH SEMESTER SKA KODE_DOS EN

M001 BASIS DA TA 6 3 L022

P001 SIMULASI 6 2 L024

 Cont oh 3

select * from KULIAH

where SEMESTER between 3 and 5

Query dengan kriteria yang berbentuk range nilai tertentu dapat menggunakan tambahan k lausa between. Pada contoh diatas ak an menampilkan record -rec ord k uliah yang diselenggarakan antara semester 3 s/d semster 5. Tampilanny a adalah :

KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOS EN

M002 OR-K OM 3 3 L023

F001 SIS TEM BERKAS 4 3 L025

K001 PANCAS ILA 3 2 L026

 Cont oh 4

Select * From KULIAH

Where NAMA_KULIAH like ‘ S%’

Untuk atribut yang bertype string dapat melakukan pencarian dengan pola tertentu, dengan memanfaatkan karakter percent ‘ % ‘atau ‘ _ ‘, dengan menambahkan klausa like pada klausa where. Pada c ontoh diatas akan menampilkan record-record K ULIAH yang nama mata kuliahnya diawali dengan huruf ‘ S ‘. Sehingga tampilannya adalah :

KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOS EN

P001 SIMULASI 6 2 L024

F001 SIS TEM BERKAS 4 3 L025

 Cont oh 5

Select *

from KULIAH

where NAMA_KULIA H like ‘ _ A% ‘

Ekspresi diatas akan menampilkan record-record pada tabel kuliah tentang mata kuliah yang huruf / karakter dari nama mata kuliah nya adalah ‘ A ‘. Tamplannya adalah :

KODE_KUL NAMA_KULIAH SEMESTER SKS KODE_DOS EN

M001 BASIS DA TA 6 3 L022

K001 PANCAS ILA 3 2 L026

From

Klausa ini digunakan untuk menetapkan tabel yang kita jadikan sebagai sumber penc arian data. Basis data terdiri dari beberapa tabel yang saling berhubungan, oleh karena itu sering kali dibutuhkan

query dari satu tabel atau dari lebih dari satu tabel sekaligus. Atribut -atribut y ang akan kita tampilkan dalam hasil query tidak hanya berasal dari satu tabel , namun bisa jadi dari sejumlah tabel, pada kasus seperti inilah klausa from akan sangat berperan penting. Pada contoh-contoh terdahulu hanya ditampilkan query dari satu tabel. Namun untuk ulasan kali ini akan diberikan contoh query yang menggambarkan hubungan antar tabel.

(6)

KODE_DOS EN NAMA_DOS EN STATUS ASAL

L022 ISMAYA TE TAP MEDAN

L023 GUNAWAN TE TAP LAMPUNG

L024 BUDIHARJO KONTRAK SRAGEN

L025 WARDA TI TE TAP SEMARANG

L026 HARTA TI KONTRAK JAKARTA

Tabel dosen diatas akan direlasikan dengan tabel kuliah yang telah dibuat sebelumnya.  Cont oh 1

select *

from KULIAH, DOSEN

where KULIAH . KODE _DOSEN = DOSE N . KODE_DOSEN

Untuk melakukan query ant ara dua tabel atau lebih, tidak bisa dilakukan dengan sembarangan. Tabel_tabel yang akan dijadikan query haruslah memiliki hubungan. Pada contoh diat as hubungan pada tabel kuliah dengan tabel dosen diwakili oleh kode dosen, dimana atribut ini dimiliki oleh kedua tabel tersebut. Tampilannya adalah :

KODE_

Ekspresi diatas merupakan contoh penggunaan alias, dimana tabel kuliah dialiaskan dengan K dan tabel dos en dialiaskan dengan D. tampilan yang akan diperoleh sama dengan tampilan diat as.  Cont oh 3

select K.KODE_K UL, K.NAMA_K ULIAH, D.NAMA_DOSE N from KULIAH K, DOSEN D

where K . KODE_DOSEN = D . KODE _DOSEN

Ekspresi di atas akan menampilkan record-record pada atribut kode kuliah, nama mata kuliah dari tabel kuliah dan record-record dari atribut nama dosen dari tabel dosen. Tampilanny a adalah :

KODE_KUL NAMA_KULIAH NAMA_DOS EN

M001 BASIS DA TA ISMAYA

M002 OR-K OM GUNAWAN

P001 SIMULASI BUDIHARJO

F001 SIS TEM BERKAS WARDA TI

K001 PANCAS ILA HARTA TI

 Cont oh 4

select K . KODE_KUL as KODE, K . NAMA_KULIA H as KULIA H, D . NAMA_DOSEN a s DOSEN

from KULIAH K, DOSEN D where K . KODE_DOSEN = D . KODE _DOSEN and SEMESTER = 4

(7)

KODE KULIAH DOSEN

F001 SIS TEM BERKAS WARDA TI

1.1.1.5.1.1.1 Query Sorting

Pengurut an record-record hasil query disesuaikan dengan struktur penyimpanan yang kita terapkan pada tabel query. Terdapat dua jenis struktur penyimpanan, yaitu :

 Struktur penyimpanan heap

Dimana pada struktur penyimpaanan ini hasil query akan ditampilkan berdasarkan kronologis ( waktu ) penyimpanan.

 Struktur penyimpanan sekuensial berindeks

Pada struktur penyimpanan ini hasil query akan ditampilkan sesuai dengan atribut yang menjadi dasar indeks.

Terdapat dua jenis mode pengurutan, yaitu pengurutan naik dan pengurut an turun. Kedua m ode

pengurutan tersebut sama-sama mengunakan klausa order by, hanya saja pada pengurutan turun

ditambahkan dengan klausa de sc pada klausa order by nya. Berikut ini adalah contoh pengurutan

hasil query;

 Cont oh 1

Select *

from KULIAH

order by NAMA_KULIAH

Ekspresi diatas akan menampilkan query dengan urut an naik berdasark an nama mata kuliah. Tampilannya adalah :

KODE_KUL NAMA_KULIAH 1.1.1.6 SEM EST ER

1.1.1.7 S K S

1.1.1.8 KODE_D OSEN

M001 BASIS DA TA 6 3 L022

M002 OR-K OM 3 3 L023

K001 PANCAS ILA 3 2 L026

P001 SIMULASI 6 2 L024

F001 SIS TEM BERKAS 4 3 L025

 Cont oh 2

select *

from KULIAH 1.1.1.8.1.1.1.1 order by NA MA_KULIAH desc

Ekspresi diatas akan menampilkan query dengan urut an turun berdasark an nama mata kuliah. Tampilannya adalah :

KODE_KUL NAMA_KULIAH 1.1.1.9 SEM EST ER

1.1.1.10 S K S

1.1.1.11 KODE_D OSEN

F001 SIS TEM BERKAS 4 3 L025

P001 SIMULASI 6 2 L024

K001 PANCAS ILA 3 2 L026

M002 OR-K OM 3 3 L023

M001 BASIS DA TA 6 3 L022

Cont oh penggunaan klausa dasar SQL, yang melibatkan empat buah tabel sekaligus, yaitu tabel

(8)

TABEL 4 : NILAI

NIM KODE_K UL KODE_NILA I

9961001 M001 B

9961001 P001 A

9961002 M002 C

9961002 P001 C

9961003 K001 A

9961004 F001 A

9961004 M002 C

9961005 F001 C

9961005 K001 B

Cont oh berikut akan menampilkan kartu hasil studi dari seoran g mahasiswa berdasark an pada NIM

nya.

select

N . NIM, M . NAMA as NAMA _MHS, K . NAMA_KUL, D . NAMA_DOSEN, N . KODE_NILA I

from

MAHASISWA M,

KULIAH K,

DOSEN D,

NILA I N

where N . NIM = M . NIM and

N . KODE_K UL = K . KODE_KUL and D . KODE_DOSEN = K . KODE_DOSEN and NIM = ‘9961001’

1.6 Latihan

1. Lakukan dan coba semua contoh pada modul 4.

2. Lihat struktur data pada Modul 1, kemudian kerjakan query berikut ini:

a. Tampilkan daftar semua buku yang dipinjam dan siapa peminjamnya. b. Tampilkan semua buku yg masih tersedia beserta lok asi perpustakaannya.

Gambar

TABEL 1 : MAHASISWA
tabel kuliah berikut ini:
TABEL 3 : DOSEN
Tabel dosen diatas akan direlasikan dengan tabel kuliah yang telah dibuat sebelumnya.

Referensi

Dokumen terkait

Untuk menentukan skor kemampuan berpikir kretaif matematis itu kita harus menyusun pedoman penskoran, Selanjutnya kita memberi skor dengan cara menterjemahkannya ke dalam

Mengkoleksi lebih dari 300 kendaraan, Museum Angkut memiliki 10 zona yang berbeda dan juga atraksi yang menarik yang akan memikat wisatwan.. Menggunakan metode

Nilai BEP tersebut menunjukkan pada saat pabrik beroperasi 54,33 % dari kapasitas maksimum pabrik 100%, maka pendapatan perusahaan yang masuk sama dengan biaya

Sesungguhnya ada salah seorang dari kalian yang beramal dengan amalan penduduk surga hingga jarak antara dirinya dengan surga tinggal sehasta saja, namun takdir yang

Pertemuan terakhir: dilakukan dalam kelas besar dengan bentuk diskusi panel untuk melaporkan hasil diskusi masing-masing kelompok dan menanyakan hal-hal yang belum

Pada saat Peraturan Gubernur ini mulai berlaku, ketentuan mengenai izin lokasi dan izin pengelolaan di perairan wilayah pesisir dan pulau- pulau kecil sebagaimana diatur

Metode analisis dilakukan melalui analisa deskriptif kualitatif kuantitatif dari hasil wawancara secara langsung dengan masyarakat sekitar proyek Pada masyarakat

Tujuan dari aksi tersebut juga untuk menunjukkan kepada pemerintah bahwa, larangan mengemudi bagi kaum perempuan telah melumpuhkan setengah dari populasi di Arab Saudi,