Jumat, 10 Oktober 2014

Praktikum DBD Laporan 4

Pengertian

AS (sebagai)
as merupakan sintak dengan perintah menampilkan nama kolom pada table sesuai dengan yang diinginkan, atau mengganti nama kolom pada tampilan
stuktur sintak as : select namakolom as namakolompengganti from namatabel;

AND dan OR
penggunaan AND dan OR dilakukan untuk menambahkan syarat WHERE, yang menggunakan logika boolean AND dan OR

sintak AND : select * from namatabel where namakolom = ‘pencarian 1’ and namakolom = ‘pencarian 2’;
sintak OR : select * from namatabel where namakolom = ‘pencarian 1’ or namakolom = ‘pencarian 2’; 

BETWEEN (diantara)
Between digunakan untuk menentukan lebar atau panjang nilai yang berada didalam syarat, dalam artian nilai tersebut ada batas bawah sampai batas atas, beberapa operator yang bisa digunakan :

sintak BETWEEN : select * from nama_tabel where nama_kolom between ‘nilai_awal’ and ‘nilai_akhir’;





IN dan NOT IN
IN atau NOT IN merupakan operator pencocokan salah satu nilai yang ada pada suatu daftar nilai, sebagai gambaran manampilkan data yang ingin ditampilkan dengan pencocokan masukan
sintak IN : select * from nama_tabel where nama_kolom in (kata_kunci1, kata_kunci2, kata_kunci13, kata_kunci14);

LIKE (seperti)
LIKE merupakan sebuah sintak untuk mencari sebuah data yang memenuhui atau memuat sebuah character yang di cari beberapa operator LIKE :

sintak LIKE : select * from nama_tabel where nama_kolom like ‘operator’;




REGEXP
sebuah cara untuk mencari character,string atau yang lainnya pada sebuah nilai lalu dilakukan pencocokan dengan REGEXP, beberapa operator regexp :

sintak REGEXP : select * from nama_tabel where nama_kolom regexp ‘operator_regexp dan patern’;





DISTINCT
menampilkan nilai data tanpa ada duplikasi atau pengulangan, meskipun pada data aslinya banyak terjadi pengulangan
sintak DISTINCT : select distinct nama_kolom from nama_tabel;

LIMIT & OFFSET
LIMIT perintah menampilkan data dengan adanya pembatasan jumlah output, artinya menampilkan jumlah baris yang dibutuhkan dihitung dari baris awal,
sedangkan OFFSET menampilkan baris dari penghilangan baris pertama
sintak LIMIT : select * from nama_tabel limit jumlah_baris;
sintak OFFSET : select * from nama_tabel offset jumlah_baris;

UNION, EXCEPT dan  INTERSECT
UNION merupakan perintah untuk menampilkan gabungan table dan semua data yang ada ditampilkan,namun bila ada yang sama ditampilkan satu kali
EXCEPT merupakan perintah untuk menampilkan data yang tidak termasuk kedalam gabungan antar table
INTERSECT merupakan perintah untuk menampilkan data irisan antar table, atau nilai yang sama yang dimiliki setiap table
sintak UNION :  select * from nama_table1 union select * from nama_table2;
sintak EXCEPT :  select * from nama_table1 where nama_kolom not in (select nama_kolom from nama_table2);
sintak INTERSECT : select * from nama_table1 where nama_kolom in (select nama_kolom from nama_table2);

Persiapan praktek :

menambahkan data pada table fakultas insert into fakultas values (1,'saintek'),(3,'ekonomi');






menambahkan kolom gender pada table mahasiswa \ alter table mahasiswa add gender varchar(20);
memasukkan 7 data pada table mahasiswa \ insert into mahasiswa values (11,'binta','malang',1,98736343,'P'), (12,'ari','blitar',1,7463238,'L'), (13,'antok','kedir',3,652738442,'L'), (15,'andi','jombang',2,3647382,'L'), (16,'susi','lamongan',1,7463822,'P'), (17,'tutik','jember',2,47362828,'P');


1. menampilkan data mahasiswa dengan nama kolom dirubah tetapi tidak permanen dengan kriteria : nomer_identitas, nama, alamat, nama_fakultas
select nim_mah as nomer_identitas, nama_mah as nama, alamat_mah as alamat, nama_fak as nama_fakultas from fakultas, mahasiswa where mahasiswa.id_fak=fakultas.id_fak;


2. menampilkan data mahasiswa yang bekelamin laki-laki dan di fakultas saintek
 select nama_mah from mahasiswa where gender ='L' and id_fak =1 ;
    menampilkan data mahasiswa berada di saintek atau berjenis kelamin laki-laki
 select nama_mah from mahasiswa where gender ='L' or id_fak =1;


3. menampilkan data mahasiswa dari nomer 13 sampai 15, dengan between / select * from mahasiswa where nim_mah between 13 and 15; / tanpa between / select * from mahasiswa where nim_mah >= 13 and nim_mah <= 15; /
    menampilkan data mahasiswa yang bukan 13 sampai 15, dengan between / select * from mahasiswa where nim_mah not between 13 and 15; / tanpa between / select * from mahasiswa where nim_mah < 13 or nim_mah > 15; /

4. menampilkan data mahasiswa dengan nomer 12,13,15 menggunakan operator IN / select * from mahasiswa where nim_mah in (12,13,15);

5. menampilkan data mahasiswa yang namanya mempunyai awalan huruf "a" / select * from mahasiswa where nama_mah like 'a%';


6. menampilkan data mahasiswa yang namanya mempunyai huruf terahir "a" dan huruf ketiga adalah "n" / select * from mahasiswa where nama_mah like '__n%a';


7. menampilkan no fakultas di tabel mahasiswa dengan nomer harus tidak ada yang sama / select disticnt id_fak from mahasiswa;


8. menampilkan data mahasiswa 3 baris / select * from mahasiswa limit 3;


9. menampilkna data mahasiswa dengan nama awalan a dan selanjutnya boleh r, t atau d / select * from mahasiswa where nama_mah regexp '^a.*[rdt]';


10. membuat table organ_dalam / create table organ_dalam; / mengisi data / insert into organ_dalam values (1,'jantung'),(2,'paru-paru'),(3,'tenggorokan');

     membuat table organ_luar / create table organ_luar; / mengisi data / insert into organ_luar values (1,'hidung'),(2,'mata'),(3,'tenggorokan');

     menggabungkan 2 table diatas (UNION) gabungan /  select * from organ_dalam union select * from organ_luar;

     mencari yang berbeda dari 2 table (EXCEPT) / select * from organ_luar where nama not in (select nama from organ_dalam);

     mencari irisan dari 2 table (INTERSECT) /  select * from organ_luar where nama in (select nama from organ_dalam);


Perbedaan antara DBMS Postgre dengan MySQL adalah

1. sintak dalam penggunaan regexp, MySQL dalam sintaknya harus tertulis select * from nama_tabel where nama_kolom regexp ‘operator_regexp dan patern’; sedangkan Postgre tulisan regexp yang diblok diganti simbol "~"  select * from nama_tabel where nama_kolom ~ ‘operator_regexp dan patern’;

2. sintak dalam penggunaan Except, MySQL dalam sintaknya tertulis select * from nama_table1 where nama_kolom not in (select nama_kolom from nama_table2); sedangkan postgre adalah select nama_kolom from nama_tabel except select nama_kolom from nama_tabel; 

3. sintak dalam penggunaan Intersect, MySQL dalam sintaknya tertulis  select * from nama_table1 where nama_kolom in (select nama_kolom from nama_table2); sedangkan postgre adalah elect nama_kolom from nama_tabel intersect select nama_kolom from nama_tabel; 

Kesimpulannya :

1.Penggunaan sintak AS untuk menggati nama hanya pada tampilan, tidak permanen
2.Untuk menampilkan data yang bersarat atau mempunyai logika menggunakan sintak AND atau OR
3.Untuk menampilkan data yang bersarat (mempunyai jangkauan) bisa menggunakan BETWEEN atau operator yang dibutuhkan
4. Untuk menampilkan data yang diinginkan bisa dengan sintak IN
5. Sintak LIKE bisa digunakan untuk menampilkan data yang mengandung karakter yang dicari
6. Sintak DISTINCT digunakan untuk menampilkan data tanpa ada duplikasi
7. Sintak LIMIT menampilkan jumlah baris yang dibutuhkan dihitung dari baris awal
8. Sintak REGEXP menampilkan character,string atau yang lainnya yang dicari pada sebuah nilai
9. Sintak UNION = menampilkan gabungan, EXCEPT = menampilkan yang tidak sama, INTERSECT = menampilkan yang sama

sumber :
http://www.duniailkom.com/tutorial-mysql-menampilkan-data-dari-tabel-mysql-select/
http://www.duniailkom.com/tutorial-belajar-mysql-pencarian-data-dari-tabel-mysql-dengan-regular-expression-regexp/
http://openclosesesame.wordpress.com/2012/06/23/union-intersect-dan-except-dbname-angka/
http://tutorial.belajarweb.net/mysql/mysql-like.html

Tidak ada komentar:

Posting Komentar