Laporan Praktikum 4
“Pengenalan Operator Dasar”
A.
Dasar Teori
·
AS
AS biasa digunakan untuk
menampilkan label kolom dengan nama lain
sehingga yang akan muncul dalam hasil query bukan nama asli kolom, tetapi nama yang mungkin lebih sesuai dan mudah dimengerti.
AS digunakan setelah nama kolom yang
akan diganti yang kemudian diikuti dengan nama penggantinya. Berikut struktur querynya :
select namakolom
as namakolompengganti from namatabel;
Contoh :
·
AND dan OR
Pada bagian
sebelumnya kita menggunakan
anak kalimat atau
sintaks WHERE hanya pada
konteks yang sederhana.
Berikut ini kita
akan mencoba menggunakan WHERE untuk
konteks yang lebih
kompleks lagi, anak
kalimat where yang
kompleks akan bekerja dengan baik dengan
menggunakan kata AND
dan OR. SQL menggunakan standar logika boolean
three-valued seperti pada tabel berikut ;
Berikut struktur SQL untuk penampilan data ;
select * from
namatabel where namakolom = ‘pencarian
1’ and namakolom = ‘pencarian 2’;
Atau
select * from
namatabel where namakolom = ‘pencarian 1’ or namakolom = ‘pencarian 2’;
Contoh :
·
BETWEEN
BETWEEN digunakan untuk menentukan lebar nilai dari nilai terendah dan nilai tertinggi. Pada
BETWEEN menggunakan operator pembanding seperti pada tabel berikut;
Logika operator BETWEEN sebagai berikut :
Ø Nilai a dalam formula “a BETWEEN x AND y” indentik
dengan “a >= x AND a <= y“
Ø “a NOT
BETWEEN x AND y “ identik dengan “a < x OR a > y”
Berikut Struktur yang digunakan :
select *
from nama_tabel where
nama_kolom between ‘nilai_awal’
and ‘nilai_akhir’;
Contoh :
Memunculkan data pegawai
dimana tanggal lahirnya
antara tanggal 9 -9-1999 sampai 1-1-2001.
·
IN dan NOT IN
Operator
IN berguna melakukan
pencocokan dengan salah
satu yang ada pada suatu daftar
nilai. Berikut Struktur yang digunakan
select *
from nama_tabel where in (kata_kunci1,
kata_kunci2, kata_kunci13, kata_kunci14);
Contoh : menampilkan data pegawai yang memiliki ip
1,2, dan 3
·
LIKE
LIKE digunakan ketika kita ingin
mencari sebuah data yang hanya diwakili oleh salah satu
atau lebih hurufnya
saja. Misalkan kita
ingin mencari nama
yang huruf awalnya R,
maka kita harus
menggunakan LIKE. Berikut
adalah tabel contoh
kasus penggunaan LIKE :
Berikut struktur SQL untuk pencarian data
menggunakan LIKE :
select * from
nama_tabel where nama_kolom like
‘operator’;
Contoh : Mencari data pegawai yang mempunyai nama
dengan huruf awalan r.
·
REGEXP
Regular Expression
atau Regex, merupakan
sebuah teknik atau
cara untuk mencari persamaan -
presamaan string atau data dan memanipulasinya. Biasanya lebih sering digunakan
untuk string. Didalam PostgreSQL disimbolkan dengan “~”. Berikut tabel daftar
simbol pada reguler expression :
Berikut struktur SQL untuk pencarian
data menggunakan REGEXP :select * from
nama_tabel where nama_kolom
~ ‘operator_regexp dan patern’;
Contoh :
·
DISTINCT
DISTINCT sering
kali diperlukan untuk
mengembalikan hasil dari
sebuah query dengan tidak
terdapat duplikasi, artinya
pada hasil outputnya
tidak terjadi kesamaan data
meskipun pada data sesungguhnya sangat mungkin banyak duplikasi. Hal ini juga
berlaku jika data yang ada dalam bentuk angka. Berikut struktur perintah dasar
SQL :
select distinct
nama_kolom from nama_tabel;
Contoh :
·
LIMIT
LIMIT dan
OFFSET digunakan untuk
membatasi jumlah output
dari query berdasarkan jumlah row
bukan karena kondisi seperti WHERE. Bisa dikatakan LIMIT adalah untuk
menentukan jumlah baris yang akan ditampilkan yang dihitung dari baris pertama,
sedangkan OFFSET digunakan
untuk menghilangkan baris
sesuai dengan jumlah yang
diberikan pada OFFSET. Berikut struktur perintah dasar SQL :
select * from
nama_tabel limit 2;
Atau
select * from
nama_tabel offset 2;
Contoh :
·
UNION, EXCEPT dan INTERSECT
Hasil dari
dua buah query
dapat dikombinasikan dengan
menggunakan UNION, EXCEPT atau
INTERSECT. UNION digunakan
untuk menggabungkan hasil dua
buah query menjadi satu kolom. Berikut struktur query untuk UNION :
select nama_kolom
from nama_tabel union
select nama_kolom from nama_tabel;
atau
select nama_kolom
from nama_tabel union
all select nama_kolom
from nama_tabel;
EXCEPT digunakan untuk menampilkan
hanya query pertama saja, sedangkan hasil query kedua dan yang sama dengan
hasil query kedua tidak akan ditampilkan.Berikut struktur query penggunaan
EXCEPT :
select nama_kolom
from nama_tabel except
select nama_kolom from nama_tabel;
Perintah INTERSECT
hanya akan menampilkan
seluruh isi dari
data yangmemiliki kesaman diantara
hasil kedua query
tersebut . Berikut struktur
query penggunaan INTERSECT :
select nama_kolom
from nama_tabel except
select nama_kolom from nama_tabel;
Contoh :
A. Hasil Praktikum menggunakan Mysql
Sebelum kita menyelesaikan soal –
soal dalam praktikum ke empat ini mari kita Gunakan
tabel mahasiswa dan
fakultas pada pertemuan
3. Tambahkan kolom gender di tabel mahasiswa kemudian update data
mahasiswa. Insert data mahasiswa hingga 7 baris.
Ø Langkah pertama kita memakai database praktikum 3
dimana telah terdapat tabel fakultas & tabel mahasiswa.
Ø Tambahkan data fakultas ‘saintek’ dan ‘ekonomi’ pada
tabel fakultas
insert into fakultas
values (1,'saintek'),(2,’ekonomi’);
Ø Tambahkan data mahasiswa menjadi 7 mahasiswa dengan
menambahkan kolom gender pada data sebelumnya.
alter table mahasiswa
add column gender varchar (1);
update mahasiswa
set gender=’L’ where nim_mah=14;
select into
mahasiswa values (11,’binta’,’jakarta’,2,08564732345,’P’), (12,’ismail’,’bojonegoro’,1,085655333232,’L’),(13,’pipit’,’jombang’,3,085733235721,’P’),(15,’arin’,’lamongan’,2,0847306926804,’P’),
(17,’fatah’,’tuban’,2,085706234534,’L’);
Soal
1.
Menampilkan data
mahasiswa dengan nama dari kolomnya berubah menjadi nomor_identitas, nama,
alamat,nama_fakultas tanpa harus merubah
nama kolom secara permanen.
select nim_mah
as nomor_identitas,nama_mah as nama,alamat_mah as alamat,nama_fak as nama_fakultas
from mahasiswa,fakultas where mahasiswa.id_fak=fakultas.id_fak;
2.
Tampilkan nama
mahasiswa fakultas saintek
yang berjenis kelamin
laki-laki.Kemudian nama mahasiswa fakultas saintek atau berjenis kelamin
laki-laki.
select nama_mah
from mahasiswa where id_fak=2 and gender='L';
select nama_mah
from mahasiswa where id_fak=2 or gender='L';
3.
Menampilkan data
mahasiswa dari nomor 13 sampai dengan 15, kemudian tampilkan juga data mahasiswa
yang bukan dari nomor 13 sampai dengan 15 menggunakan between
dan tanpa menggunakan between.
select * from
mahasiswa where nim_mah between '13' and '15';
select * from
mahasiswa where nim_mah not between '13' and '15';
select * from
mahasiswa where nim_mah >= '13' and nim_mah <='15';
select *from
mahasiswa where nim_mah < '13' or nim_mah >'15';
4.
Menampilkan
mahasiswa dengan nomor 12,13,15 menggunakan operator IN.
select* from
mahasiswa where nim_mah in(12,13,15);
5.
Menampilkan
semua data mahasiswa yang namanya mempunyai awalan huruf “a”.
select* from
mahasiswa where nama_mah like'a%';
6.
Tampilkan semua
data mahasiswa yang namanya mempunyai akhiran “a” dan huruf ke-3 dari nama
tersebut terdapat huruf “n”.
select* from mahasiswa
where nama_mah like'__n%a';
7.
Tampilkan nomor fakultas di
tabel mahasiswa dengan nomor harus
tidak ada yang sama dari baris pertama sampai akhir.
select distinct
id_fak from mahasiswa;
8.
Tampilkan data
mahasiswa 3 baris saja.
select * from
mahasiswa limit 3;
9.
Tampilkan data
mahasiswa dengan ciri-ciri memiliki nama awalan a kemudian kata selanjutnya
boleh r atau boleh n atau boleh i.
select * from
mahasiswa where nama_mah regexp ~'a[rni]';
10. Membuat tabel dengan organ_dalam dan organ_luar.
create table
organ_dalam(nomor int primary key,nama varchar (20));
create table organ_luar(nomor int primary key,nama varchar (20));
insertinto organ_dalam
values(1,'jantung'),(2,'paru-paru'), ('tenggorokan');
insert into
organ_luar values(1,'hidung'),(2,'mata'),(3,'tenggokan');
Menampilkan data dari
kedua tabel tersebut menggunakan UNION, EXCEPT
dan INTERSECT.
a.
Union
select*from
organ_dalam union select * from organ_luar;
b.
Except / not in
select*from
organ_dalam where nama not in (select nama from organ_luar);
c.
Intersect/in
select*from
organ_dalam where nama in (select nama from organ_luar);
C. Perbandingan ProgresmySql dan DBMSMySqlDalam beberapa operator keduanya
mempunyai query yang sangat mirip bahkan sama persis, seperti pada AND,OR,AS,BEETWEN,LIMIT,IN,DISTINCT,LIKE.
Tetapi keduanya memiliki perbedaan kecil ketika REGEXP,INTERSECT, dan EXCEPT.
Dan berikut hasil evaluasi saya setelah praktikum dan mencoba keduanya
Postgresql
Kelebihan
· Querynya
lebih mudah dimengert,terdapat
fungsi UNION,EXCEPT dan INTERSECT sendiri
PostgreSQL terkenal akan fitur-fitur yang disediakannya, di mana telah
diketahui sejak dulu bahwa PostgreSQL mempunyai sekumpulan fitur yang kaya dan
lengkap, yang mendukung transaksi, view, subselect, foreign key support,
pemeriksaan, dan lain-lain. Akan tetapi PostgreSQL selama ini telah banyak
memberikan keuntungan yang lebih terhadap para perusahaan atau kegiatan bisnis
yang menggunakan database system ini dari pada dengan database system yang
lainnya.
Untuk menggunakan data base dan tabel query pada postgresql lebih mudah
dan singkat
Untuk mengoneksikan dan menampilkan database serta tabel dengan query
lebih mudah
Kekurangan
Kurang fokus dalam hal kelangsingan dan kecepatan. arsitektur dengan
multiproses ini sulit diterapkan ke Windows, sebab Windows amat
thread-oriented.
•Tidak dapat mengetahui jika ada kesalahan query
·
Mysql
Kelebihan
· Menggunakan bahasa yang lebih manusiawi yaitu ketika menggunakan REGEXP simbol ~ digantikan dengan tulisan REGEXP
Kekurangan
· Tapi imbas digantinya simbol dengan tulisan querynya menjadi lebih panjang
· Dan Mysql tidak mempunyai fungsi EXCEPT dan INTERSECT sendiri tapi kita bisa mengakalinya dengan menggunakan cara lain yaitu dengan fungsi IN
D. Kesimpulan
Kesimpulan seperti yang telah dijelaskan diatas bahwa fungsi beberapa operator dasar sql adalah sebagai berikut
AS : Digunakan untuk menampilkan label kolom dengan nama lain sehingga yang akan muncul dalam hasil query bukan nama asli kolom.
AND dan OR : Pengembangan dari fungsi WHERE.
BEETWEN : Untuk menampilkan data yang ada diantara dua nilai.
IN : Melakukan pencocokan dengan salah satu yang ada pada suatu daftar nilai.
LIKE : Untuk mencari sebuah data yang hanya diwakili oleh salah satu atau lebih hurufnya saja.
REGEXP : Teknik atau cara untuk mencari persamaan - presamaan string atau data dan memanipulasinya
DISTINCT : Untuk mengembalikan hasil dari sebuah query dengan tidak terdapat duplikasi.
LIMIT : Untuk menentukan jumlah baris yang akan ditampilkan yang dihitung dari baris pertama.
OFFSET : Untuk menghilangkan baris sesuai dengan jumlah yang diberikan pada OFFSET.
UNION : Untuk menggabungkan hasil dua buah query menjadi satu kolom.
EXCEPT : Untuk menampilkan hanya query pertama saja
INTERSECT : Menampilkan seluruh isi dari data yangmemiliki kesaman
E. Daftar Pustaka
Modul Praktikum Desain Basis Data 2014
0 comments:
Post a Comment