Berikut ini akan diberikan contoh-contoh penggunaan fungsi agregasi dalam klausa SQL: Contoh 1 Menampilkan banyaknya record dosen select count ( * )

dokumen-dokumen yang mirip
SQL. (Structured Query Language)

Modul 4 SQL Tujuan a. Mahasiswa dapat mengenal Sintak dasar SQL b. Mahasiswa dapat mengoperasikan Sintak dasar SQL. 1.2 Materi a. SQL b.

Pertemuan 11 Structure Query Language(SQL)

Modul 3 : Query Penggabungan Tabel

Pengertian Query. Query adalah perintah-perintah untuk mengakses data pada sistem basis data

SQL (STRUCTURED QUERY LANGUAGE)

Perintah MySQL Lanjutan

RENCANA PEMBELAJARAN

Untuk mencoba contoh-contoh perintah join, silahkan eksekusi query create+insert dibawah ini:

Rencana Pelaksanaan Pembelajaran

STRUCTURE QUERY LANGUAGE (SQL)

SEKOLAH TINGGI TEKNOLOGI INDONESIA TANJUNG PINANG

STRUCTURED QUERY LANGUAGE (SQL) (Implementasi menggunakan MySQL)

SISTEM INFORMASI Marta Lenah Haryan8 Copyright Wondershare So3ware

STRUCTURED QUERY LANGUAGE (SQL)

Macam - Macam Perintah Pada SQL

Latihan : Sebutkan record berapa saja yang akan ditampilkan berdasarkan perintah berikut :

PRAKTIKUM 5 SISTEM BASIS DATA JOIN

Apa yang akan dibahas? Pengertian SQL Penggolongan Statement SQL Aturan Gramatika SQL Struktur Dasar SQL Query Satu (1) Tabel

Basis Data. Bagian IV SQL (3) Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan

Modul 3 Pengelolaan Tabel

MODUL V DATA MANIPULATION LANGUAGE (DML) 1

Praktikum Basis Data 2017 TE UM

Apakah SQL? Membuat basis data dan struktur tabel Input, update, dan delete data dari tabel Membuat query sederhana dan kompleks SQL

SQL LANJUT BASIS DATA. Rajif Agung Yunmar, S.Kom., M.Cs.

MENAMPILKAN DATA DARI BANYAK TABEL

PERTEMUAN 5 PENGGUNAAN FUNGSI GROUP


STRUCTURE QUERY LANGUAGE

Data Manipulation Language (DML) & Data Control Language (DCL) pada Database

By Mrs Imana Malia Kondou, S.T. missimanakondou.wordpress.com

Riyanto

Sistem Basis Data Danny Kriestanto, S.Kom., M.Eng

Operasi Dasar MySQL Menggunakan CLI(Command Line Interface)

Pemrograman Basis Data Berbasis Web

RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS)

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN WEB Semester: 2 MYSQL 200 menit No.: Job: 12 Tgl: Hal.

TUGAS PRAKTIKUM SISTEM BASIS DATA

S Q L STRUCTURED QUERY LANGUAGE DEFINITION MANIPULATION C O N T R O L D M L SELECT INSERT UPDATE DELETE

BAB III STRUCTURED QUERY LANGUAGE (SQL)

Pertemuan III Oleh: Ilham Rais Arvianto, M.Pd

Basis Data I. Pertemuan Ke-11 (SQL Part 2) Noor Ifada.

PENGENALAN SINTAKS DASAR DALAM MySQL

MODUL 1 Pengenalan MySQL, DDL, DML

1. Buat planing view sesuai kebutuhan topik anda (jelaskan dengan detail masing-masing view yang anda buat)

MODUL 4 INTERNET PROGRAMMING DATABASE

STRUCTURE QUERY LANGUAGE DDL & DML

Komponen-Komponen SQL a. Data Definition Language (DDL) : Digunakan untuk mendefinisikan data dengan menggunakan perintah : create, drop, alter.

Pertemuan 12 Pengenalan Structured Query Language

PERTEMUAN 11 SQL(lanjutan): Queries, Constraints & Triggers. (Chap. 5 Ramakrishnan)

Pengenalan Structured Query Language

MODUL 5 INTERNET PROGRAMMING : MySQL

Kontrak Kuliah. Perintah Manipulasi Data Lanjutan. Edi Sugiarto, S.Kom, M.Kom

MODUL PEMPROGRAMAN SQL TINGKAT DASAR 1 STANDAR KOMPETENSI: MENERAPKAN BAHASA PEMPROGRAMAN SQL TINGKAT DASAR SMK NEGERI 1 MAJALENGKA

MODUL 2 PRAKTIKUM SQL TINGAT LANJUT JOIN

SQL (Structure Query Language) Gentisya Tri Mardiani, S.Kom

Untuk menampilkan data-data yang telah tersimpan dalam database diperlukan perintah SELECT, yang dapat dirumuskan sebagai berikut:

BAHASA QUERY KOMERSIAL

BAHASA QUERY KOMPLEKS

Join Antar Tabel. M. Saefudin SKom, MMSI

Tutorial Tipe Data MySQL

SUBQUERY VIEW JOIN PRAKTIKUM BERKAS DAN BASIS DATA 2010/2011. Rizki Arif Firdaus

DATABASE - MySQL. Muhammad Zen S. Hadi, ST. MSc.

RENCANA PEMBELAJARAN SEMESTER

MODUL 8. Sub Query Pada baris dan Kolom PRAKTIKUM BASIS DATA LANJUT TEKNIK PERANGKAT LUNAK UNIVERSITAS PGRI RONGGOLAWE

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP) PROGRAM STUDI : DIII MANAJEMEN INFORMATIKA Semester : 4

Praktikum Basis Data. By. Rita Wiryasaputra, ST., M. Cs.

PENGANTAR TEKNOLOGI SISTEM INFORMASI MANAGEMENT 2

BAHASA QUERY KOMERSIAL

M O D U L K U L I A H

Strctured Query Language BASIS DATA

MODUL 3 PENGELOMPOKAN, PENGURUTAN, KRITERIA DATA, AGREGASI

BERMAIN DATA DENGAN SQL SERVER

MySQL J A M K E T I G A

15-Jan DATABASE - MySQL. Database. Constraints. Tujuan: Memahami perintah-perintah dasar DDL dan DML

3 rd DML : Selection(3)

TABLE JOIN SQL SERVER 2005

LAPORAN TUGAS BASIS DATA I

Jobsheet SQL Dasar : Hari Zulianto, ST [Year]

Kontrak Kuliah. Dasar-dasar MySQL. Edi Sugiarto, S.Kom, M.Kom

KURSUS ONLINE JASA WEBMASTERS

MODUL 7 STRUCTURED QUERY LANGUAGE

M0564-Pengantar Sistem Basisdata 12/ 1

Mahasiswa mengetahui & memahami mengenai DML, DCL di SQL. (Isi_Field_1, Isi_Field_2,, Isi_Field_N) ;

MODUL SISTEM BASIS DATA FUNGSI AGREGAT

Basis Data Spasial Modul 2

MODUL PRAKTIKUM 06. Database Implementation dengan Aggregate. - Mengetahui dan membuat perintah dasar Aggregate Count, Sum, AVG, Min, Max.

Pertemuan 11. Bahasa Query Terapan Lanjutan

TUGAS 1 PRAKTIKUM SISTEM BASIS DATA

DAFTAR ISI. DAFTAR ISI... 1 PRAKATA Pengenalan dan Lingkungan Kerja MySQL Tujuan... 4 Dasar Teori... 4 Praktik... 5

MODUL 4 QUERY, VIEW, DAN ALJABAR RELASIONAL

PRAKTIKUM SISTEM INFORMASI MANAJEMEN

Basis Data. DDL & Aturan Referential

MODUL 9 WEB PROGRAMMING : MySQL

MODUL II SQL A. TUJUAN

PRAKTIKUM BASIS DATA

Modul 6 Function dan Trigger

KapitaSelekta. (KBKI82127, 2 sks) Materi : Pengenalan MySQL

S Q L. Sejarah SQL. Penulisan Perintah SQL. SQL (Structure Query Language)

B. PETUNJUK. 2. Join. Praktikum Basis Data 2017 TE UM

Transkripsi:

Modul 5 SQL 2 1.1 Tujuan a. Mahasiswa dapat mengenal Sintak SQL Lanj ut b. Mahasiswa dapat mengoperasikan Sintak SQL Lanjut 1.2 Materi a. SQL b. Tabel 1.3 Alat dan Bahan a. sqlyog b. XAMPP c. phpmyadmin 1.4 Prosedur Praktikum a. Peserta membaca dan mempelajari materi praktikum sebelumnya b. Instruktur menerangkan dan menjelaskan teori dan cara kerja c. Peserta mempraktikan materi percobaan d. Peserta membuat penyelesaian terhadap soal latihan 1.5 Teori Fungsi Agregra si Fungsi agregasi digunakan untuk menampilkan kebutuhan perolehan data seperti menampilkan banyaknya record, total nilai suatu atribut, rata-rata nilai atribut, nilai atribut terbesar atau terkecil, dan lain sebagainya. Macam-macam fungsi agregasi dalam SQL adalah sebagai berikut : Count ; fungsi ini digunakan untuk mendapatkan nilai banyaknya record dari query. Sum ; fungsi ini digunakan untuk mendapatkan nilai total suatu atribut bertipekan numeric dari query. Avg ; fungsi ini digunakan untuk mendapatkan nilai rata -rata suatu atribut bertipe numeric hasil query. Max ; fungsi ini digunakan untuk mendapatkan nilai terbesar dari suatu atribut hasil query Min ; fungsi ini digunakan untuk mendapatkan nilai terkecil dari suatu atribut hasil query. Berikut ini akan diberikan contoh-contoh penggunaan fungsi agregasi dalam klausa SQL: Contoh 1 Menampilkan banyaknya record dosen select count ( * ) from DOSEN Contoh 2 Menampilkan banyaknya mata kuliah pada semester enam select count (* ) from Contoh 3 Menampilkan total sks disemester enam KULIAH where SEMESTER = 6 select sum ( SKS )

from KULIAH where SEMESTER = 6 Contoh 4 Menampilkan rata-rata sks untuk tiap-tiap semester Contoh 5 Menampilkan mahasiswa dengan usia termuda select avg ( SKS ) from KULIAH select max ( TGL_LHR ) from Contoh 6 Menampilkan mahasiswa dengan usia tertua select min ( TGL_LHR ) from MAHASISWA MAHASISWA Pengubahan Nilai Atribut Pengubahan nilai atribut dapat menggunakan perintah update, perintah ini berfungsi memperbaharui atau meng-update satu atau lebih dari satu baris atau sekelompok baris didalam tabel. Sintak : Keterangan : T KOLOM VALUES Kondisi / keadaan update T set KOLOM = VALUES where ( kondisi / keadaan ) : nama tabel yang akan mengalami perubahan record : nama atribut pada tabel yang akan mengalami perubahan nilai record : nilai baru record pada atribut dalam tabel yang akan menggantikan nilai lama. : keadaan yang menentukan record nama yang akan mengalami update / perubahan nilai. Jika klausa where tidak digunakan pada ekspresi maka, perubahan akan dilakukan pada semua record di dalam tabel. Contoh 1 Tampilannya : update MAHASISWA set where NIM = 9961003 ASAL = KENDARI 1.1.1.1.1.1 TABEL 10 : 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 KENDARI 30/10/78 TI TI 9961004 DONI L BANTUL 23/07/81 MIPA ILKOM 9961005 ANI P PATI 07/06/78 MIPA ILKOM Contoh 2 update MAHASISWA

set where NIM = 9961002 FAK = TI, PRODI = T_KIMIA Tampilannya : 1.1.1.1.1.2 TABEL 11 : 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 KENDARI 30/10/78 TI TI 9961004 DONI L BANTUL 23/07/81 MIPA ILKOM 9961005 ANI P PATI 07/06/78 MIPA ILKOM Contoh 3 update DOSEN set NAMA_DOSEN = NAMA_DOSEN +, Ssi where STATUS = TETAP Tampilannya : 1.1.1.1.1.3 TABEL 12 : DOSEN KODE_DOSEN NAMA_DOSEN STATUS ASAL L022 ISMAYA, Ssi TETAP MEDAN L023 GUNAWAN, Ssi TETAP LAMPUNG L024 BUDIHARJO KONTRAK SRAGEN L025 WARDATI, Ssi TETAP SEMARANG L026 HARTATI KONTRAK JAKARTA L027 FARIDA KONTRAK KALIMANTAN Perintah Join Perintah-perintah yang berkaitan dengan pendefinisian obyek-obyek basis data dan pembuatan tabel baru merupakan perintah-perintah yang tergolong dalam DDL ( data definition language ). Sebelum memulai membuat suatu tabel baru perlu diketahui tentang tipe data standart SQL yang berlaku. Bab yang terdahulu telah dibahas mengenai tipe-tipe data yang berlaku pada SQL. Pada dasarnya terdapat banyak sekali tipe data yang berlaku pada SQL namun hanya beberapa saja diantaranya yang diakui sebagai tipe data standart, dan diizinkan untuk digunakan pada periode standarisasi. Berikut ini adalah tipe-tipe data standart yang berlaku dalam SQL-92 : Char (n) : untuk atribut bernilai string dengan panjang tetap Varchar (n) : untuk atribut bernilai string dengan penjang fleksibel Int atau integer : untuk atribut berniali integer 2 byte Smallint : untuk stribut berniali integer 1 byte Numeric (p,d) : untuk atribut berniali pecahan fixed point Real, double, precision : untuk atribut bernilai pecahan floating point Float (n) : untuk atribut bernilai pecahan floating point dengan presisi n digit Date : untuk atribut bernilai penanggalan Time : untuk atribut bernilai waktu Sintak klausa pembuatan tabel baru : Keterangan : crete table T ( A1 D1, A2 D2,, An Dn ) T : merupakan nama tabel yang akan dibuat A1, A2,, An : merupakan nama-nama tribut yang akan terdapat di dalan tabel D1, D2,, Dn : merupakan domain nialai mesing-masing atribut tersebut yang ditentukan berdasarkan tipe datanya.

SQL : 1. Perintah dasar (bentuk dasar & bentuk lengkap) 2. Opsi DISTINCT 3. Mengganti tampilan judul kolom (alias untuk nama kolom) 4. Kondisi dengan Klausa WHERE dan HAVING 5. Kondisi jamak dengan operator AND, OR dan BETWEEN 6. Pola string dengan wildchar %, _ dan operator LIKE 7. Query dari beberapa tabel menggunakan WHERE 8. Aliasing nama tabel 9. Query dengan Operasi JOIN dan UNION 10. Pengurutan hasil Query 11. Query dengan fungsi agregasi 12. UPDATE, DELETE dan INSERT 13. SUBQUERY Join mysql> help join Name: 'JOIN' Description: MySQL supports the following JOIN syntaxes for the table_references part of SELECT statements and multiple -table DELETE and UPDATE statements: table_reference, table_reference table_reference [INNE R CROSS] JOIN table_reference [join_condition] table_reference STRAIGHT_JOIN table_reference table_reference LEFT [OUTER] JOIN table_reference [join_condition] table_reference NATURAL [LEFT [OUTER]] JOIN table_reference { OJ table_reference LEFT OUTER JOIN table_reference ON conditional_expr } table_reference RIGHT [OUTER] JOIN table_reference [join_condition] table_reference NATURAL [RIGHT [OUTER]] JOIN table_reference table_reference is defined as: tbl_name [[AS] alias] [[USE INDEX (key_list)] [IGNORE INDEX (key_list)] [FORCE INDEX (key_list)]] join_condition is defined as: ON conditional_expr USING (column_list) Examples: mysql> SELECT table1.* FROM table1 -> LEFT JOIN table2 ON table1.id=table2.id -> WHERE table2.id IS NULL; mysql> contoh data ke tabel-tabel yang sudah Anda buat.

1.1.2 Inner Join Dengan inner join, tabel akan digabungkan dua arah, sehingga tidak ada data yang NULL di satu sisi. Sebagai contoh, kita akan menggabungkan tabel pelanggan dan pesan dimana kita akan menampilkan daftar pelanggan yang pernah melakukan pemesanan (transaksi). Misalkan isi tabel pelanggan dan pesan adalah sebagai berikut : Tabel pelanggan (hanya ditampilkan field id_pelanggan, nm_pelanggan dan email) Contoh isi tabel pelanggan Tabel pe san. Contoh isi tabel pesan Cara #1. Inner Join dengan WHERE. Penggabungan dengan klausa WHERE memiliki bentuk umum sebagai berikut: SELECT tabel1.*, tabel2.* FROM tabel1, tabel2 WHERE tabel1.pk=tabel2.fk; Berikut ini perintah SQL untuk menggabungkan tabel pelanggan dan pesan:

SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pesan.id_pesan, FROM pelanggan, pesan WHERE pelanggan.id_pelanggan=pesan.id_pelanggan; Hasilnya sebagai berikut: Hasil Penggabungan 2 Tabel dengan WHERE Pada hasil perintah query di atas terlihat bahwa terdapat 5 (lima) transaksi yang dilak ukan oleh 3 (tiga) orang pelanggan. Jika kita lihat kembali isi tabel pelanggan di atas, maka terdapat satu pelanggan yang tidak ditampilkan yaitu yang memiliki id pelanggan P0003. Pelanggan tersebut tidak ditampilkan karena belum pernah melakukan transaksi. Cara #1. Inner Join dengan klausa INNER JOIN. Berikut ini bentuk umumnya: SELECT tabel1.*, tabel2.* FROM tabel1 INNER JOIN tabel2 ON tabel1.pk=tabel2.fk; Dan berikut ini perintah SQL penggabungan tabel pelanggan dan pesan. SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pesan.id_pesan, FROM pelanggan INNER JOIN pesan ON pelanggan.id_pelanggan=pesan.id_pelanggan; Hasilnya akan sama dengan gambar di atas (cara #1). 1.1.3 Outer Join Dengan outer join, tabel akan digabungkan satu arah, sehingga memungkinkan ada data yang NULL (kosong) di satu sisi. Sebagai contoh, kita akan menggabungkan tabel pelanggan dan pesan dimana kita akan menampilkan daftar pelanggan yang pernah melakukan pemesanan (transaksi). Outer Join terbagi menjadi 2 (dua) yaitu LEFT JOIN dan RIGHT JOIN. Berikut ini bentuk umum dan contohnya: LEFT JOIN. Bentuk umum: SELECT tabel1.*, tabel2.* FROM tabel1 LEFT JOIN tabel2 ON tabel1.pk=tabel2.fk; Contoh perintah SQL: SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pesan.id_pesan, FROM pelanggan LEFT JOIN pesan ON pelanggan.id_pelanggan=pesan.id_pelanggan; Hasilnya:

Hasil Perintah Left Join Berbeda dengan hasil sebelumnya (inner join), penggunaan left join akan menampilkan juga data pelanggan dengan id P0003, walaupun pelanggan tersebut belum pernah bertransaksi. Dan pada kolom id_pesan dan tgl_pesan untuk pelanggan P0003 isinya NULL, artinya di tabel kanan (pesan) pelanggan tersebut tidak ada. RIGHT JOIN Bentuk umum: SELECT tabel1.*, tabel2.* FROM tabel1 RIGHT JOIN tabel2 ON tabel1.pk=tabel2.fk; Contoh perintah SQL: SELECT pelanggan.id_pelanggan, pelanggan.nm_pelanggan, pesan.id_pesan, FROM pelanggan RIGHT JOIN pesan ON pelanggan.id_pelanggan=pesan.id_pelanggan; Hasilnya: Hasil Perintah Right Join Dengan right join, tabel yang menjadi acuan adalah tabel sebelah kanan (tabel pesan), jadi semua isi tabel pesan akan ditampilkan. Jika data pelanggan tidak ada di tabel pelanggan, maka isi tabel pesan tetap ditampilkan. 1.6 Latihan 1. Coba dulu semua contoh dalam modul 5 2. Merujuk pada kasus struktur tabel pada modul 1, maka kerjakan query berikut ini (gunakan perintah join baik left join dan inner join): a. Menampilkan posisi buku yang terpinjam b. Menampilkan rekapitulasi buku, lengkap dengan author. c. Menampilkan rekapitulasi posisi buku yang ada lengkap dengan jumlah eksemplar berikut lokasi penempatan buku.