0% menganggap dokumen ini bermanfaat (0 suara)
149 tayangan

MySQL - Data Retrieval Language (DRL) 2021

Dokumen ini membahas penggunaan MySQL sebagai DBMS untuk melakukan retrieval data menggunakan bahasa query SQL. Terdapat penjelasan mengenai klausa-klausa dasar SQL seperti SELECT, FROM, WHERE, GROUP BY, HAVING, dan ORDER BY beserta contoh-contoh penggunaannya. Dokumen ini juga menjelaskan subquery dan fungsi agregasi seperti AVG, MAX, MIN, SUM, dan COUNT dalam SQL.

Diunggah oleh

Nurul Huda
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
149 tayangan

MySQL - Data Retrieval Language (DRL) 2021

Dokumen ini membahas penggunaan MySQL sebagai DBMS untuk melakukan retrieval data menggunakan bahasa query SQL. Terdapat penjelasan mengenai klausa-klausa dasar SQL seperti SELECT, FROM, WHERE, GROUP BY, HAVING, dan ORDER BY beserta contoh-contoh penggunaannya. Dokumen ini juga menjelaskan subquery dan fungsi agregasi seperti AVG, MAX, MIN, SUM, dan COUNT dalam SQL.

Diunggah oleh

Nurul Huda
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 15

Jurusan Teknologi Informasi Politeknik Negeri Malang

Jobsheet-12: MySQL – Data Retrieval Language (DRL)


Mata Kuliah Basis Data
Pengampu: Tim Ajar Basis Data
April 2021

Topik
Data Retrieval Language (DRL) pada DBMS MySQL

Tujuan
Mahasiswa diharapkan dapat memahami penggunaan dan dapat membuat SQL statement SELECT dengan
berbagai klausa.

Pendahuluan
DRL atau DSL (Data Selection Language) adalah set perintah yang dgunakan untuk mengambil data dari
server basis data. DRL terdiri dari klausa yang dapat dikembangkan lebih lanjut, antara lain:
1. FROM : Memilih nama sebuah tabel
2. WHERE : Menunjukkan secara spesifik suatu row/baris yang akan dicari
3. GROUP BY : Menyusung data ke dalam grup
4. HAVING : Memilih diantara kelompok-kelompok data yang didefinisikan klausa GROUP BY
5. ORDER BY : Secara spesifik digunakan untuk menentukan suatu baris pada kolom tertentu
6. AS : Memberikan nama alias sementara untuk tabel atau kolom

DRL lebih diterapkan dalam beberapa hal dalam beberapa hal seperti :
1. QUERY
2. SUB-QUERY
3. FUNGSI AGREGASI

QUERY
Query merupakan operasi yang melibatkan satu atau lebih tabel untuk melakukan retrival data.
Pengambilan data dilakukan dengan beberapa klausa berikut :
1. SELECT * untuk memilih semua kolom
Format
SELECT * FROM table_name;
2. SELECT dengan WHERE untuk menampilkan baris dengan suatu kondisi
Format
SELECT column1, column2,...
FROM table_name
WHERE condition;
3. SELECT dengan DISTINCT untuk menampilkan data dengan eliminasi data yang sama (duplicate)
Format
SELECT DISTINCT column FROM table_name;
4. SELECT dengan IN untuk menampilkan data yang spesifik
Format
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1, value2, ...);

5. SELECT dengan BETWEEN untuk menampilkan data pada jarak (range) tertentu
Format
1
SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;
6. SELECT dengan LIKE untuk menampilkan data yang memiliki kemiripan dengan keyword yang
diinginkan
Format
SELECT column1,column2,...
FROM table_name
WHERE columnN LIKE pattern;
7. SELECT dengan GROUP BY untuk menampilkan susunan data dalam bentuk grup
Format
SELECT column1, column2,...
condition
FROM table_name
GROUP BY column1, column2, ...;
8. SELECT dengan ORDER BY untuk menampilkan baris secara spesifik dan terurut maju atau mundur
Format
SELECT column1, column2, ...
FROM table_name
ORDER BY column1, column2, ... ASC|DESC;
9. SELECT dengan AND, OR and NOT untuk menampilkan data dengan kondisi dan atau atau tidak
Format
AND
SELECT column1, column2, ...
FROM table_name
WHERE condition1 AND condition2 AND condition3 ...;

OR
SELECT column1, column2, ...
FROM table_name
WHERE condition1 OR condition2 OR condition3 ...;

NOT
SELECT column1, column2, ...
FROM table_name
WHERE NOT condition;
10. SELECT dengan UNION, INTERSECT dan EXCEPT untuk menampikan data dengan operasi himpunan
yang melibatkan lebih dari satu tabel
Format
UNION
Tanpa duplikasi
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;

Dengan duplikasi
SELECT column_name(s) FROM table1
UNION ALL
SELECT column_name(s) FROM table2;

INTERSECT
Tanpa duplikasi
SELECT column_name(s) FROM table1
INTERSECT
SELECT column_name(s) FROM table2;

2
Dengan duplikasi
SELECT column_name(s) FROM table1
INTERSECT ALL
SELECT column_name(s) FROM table2;

EXCEPT
Tanpa duplikasi
SELECT column_name(s) FROM table1
EXCEPT
SELECT column_name(s) FROM table2;

Dengan duplikasi
SELECT column_name(s) FROM table1
EXCEPT ALL
SELECT column_name(s) FROM table2;

SUB-QUERY
Sub-query adalah adanya query di dalam query lain. Sub-query juga disebut dengan perintah SELECT
bersarang (nested SELECT). Retrival data dalam sub-query dilakukan oleh SELECT untuk menemukan data
pada SELECT utama. Klausa GROUP BY dan HAVING juga dapat digunakan untuk retrival data pasa sub-
query. Sub-query biasanya digunakan untuk test keanggotaan himpunan atau perbandingan himpunan dan
kardinalitas.
Format
Untuk test keanggotaan
SELECT column_name(s)
FROM table_name
WHERE column_name IN (SELECT STATEMENT);
atau
SELECT column_name(s)
FROM table_name
GROUP BY column1, column2, ...;
HAVING column_name IN (SELECT STATEMENT);

Untuk perbandingan himpunan


SELECT column_name(s)
FROM table_name
operator
(SELECT STATEMENT);

FUNGSI AGREGASI
Fungsi agregasi akan melakukan perhitungan kepada sekumpulan nilai dan menghasilkan suatu nilai
tunggal.

Jenis:
1. AVG untuk menghitung rata-rata
Format
SELECT AVG(column_name)
FROM table_name
WHERE condition;
2. MAX untuk mencari nilai tertinggi
Format
SELECT MAX(column_name)
FROM table_name
WHERE condition;
3
3. MIN untuk mencari nilai terendah
Format
SELECT MIN(column_name)
FROM table_name
WHERE condition;
4. SUM untuk menjumlahkan sekumpulan nilai
Format
SELECT SUM(column_name)
FROM table_name
WHERE condition;
5. COUNT() untuk menunjukkan jumlah baris pada kolom yang diinginkan
Format
SELECT COUNT(column_name)
FROM table_name
WHERE condition;

Praktikum – Bagian 1: Membuat Database untuk Percobaan

Langka
Keterangan
h
Studi kasus yang digunakan sama dengan jobsheet DML dengan skema/model relasional/EER
1
diagram dari database berikut.

Skema tersebut adalah skema database pada sebuah sistem informasi penjadwalan di jurusan
Teknologi Informasi. Sesuai dengan percobaan pada jobsheet DML. Hapuslah tabel mahasiswa
2 pada database jadwal_perkuliahan dengan menggunakan perintah DROP TABLE, sehingga
menghasilkan record keseluruhan tabel sebagai berikut (record tidak harus sama persis dengan
tampilan ini):

4
5
6
7
3 Setelah selesai membuat database diatas, lanjutkan ke Praktikum – Bagian 2.

Praktikum – Bagian 2: Percobaan SELECT QUERY

Langka
Keterangan
h
Untuk menampilkan baris dengan suatu kondisi tertentu, digunakan statement SELECT dengan
1 WHERE. Eksekusi SQL berikut untuk menampilkan (record) pada tabel Ruang yang memiliki
kolom nama_ruang = LKJ1.

Untuk menampilkan data dengan eliminasi data yang sama (duplicate), digunakan statement
2 SELECT dengan DISTINCT. Eksekusi SQL berikut untuk menampilkan kolom kode_hari dari tabel
jadwal yang bernilai tidak sama.

8
Untuk menampilkan data yang spesifik digunakan statement SELECT dengan IN. Eksekusi SQL
3 berikut untuk menampilkan kolom kode_ruang, nama_ruang dan deskripsi_ruang dari tabel
ruang yang memiliki nama_ruang RT01 atau RT10.

Untuk menampilkan data pada jarak (range) tertentu digunakan statement SELECT dengan
4 BETWEEN. Eksekusi SQL berikut untuk menampilkan kolom kode_ruang dan nama_ruang dan
deskripsi_ruang dari tabel ruang yang memiliki kode_ruang antara 0501 dan 0508.

Untuk menampilkan data yang memiliki kemiripan dengan keyword yang diinginkan digunakan
5 SELECT dengan LIKE. Eksekusi SQL berikut untuk menampilkan kolom kode_dosen, dan
nama_dosen, pada tabel dosen yang memiliki nama dengan huruf awal ‘E’.

9
Untuk menampilkan susunan data dalam bentuk grup, digunakan SELECT dengan GROUP BY.
6 Eksekusi SQL berikut untuk menampilkan kolom kode_dosen, kode_mk, kode_ruang dan
kode_hari pada tabel jadwal yang dikelompokkan berdasarkan kode_hari.

Untuk menampilkan baris secara spesifik dan terurut maju atau mundur, digunakan SELECT
7 dengan ORDER BY. Eksekusi SQL berikut untuk menampilkan kolom kode_jp dan jp_mulai pada
tabel jp dari jam yang paling mulai hingga berakhir.

10
Untuk menampilkan data dengan kondisi dan atau atau tidak, digunakan SELECT dengan AND,
8 OR and NOT. Eksekusi SQL berikut untuk menampilkan semua kolom pada tabel jadwal dengan
kode_hari = ‘001’ dan jp_mulai = 1.

Untuk menampilkan data dari kolom yang terlibat dalam dua tabel dapat digunakan SELECT
9 dengan UNION. UNION secara otomatis akan menghilangkan duplikasi. Eksekusi SQL berikut
untuk menampilkan kolom kode_hari yang ada di tabel hari atau jadwal.

11
Untuk menampilkan data dari kolom yang terlibat dalam dua tabel dapat digunakan SELECT
10 dengan UNION ALL. UNION ALL akan menampilkan duplikasi data. Eksekusi SQL berikut untuk
menampilkan kolom nik yang yang ada di tabel penugasan atau departemen.

Silakan Capture hasil output dari query di atas


11 Setelah berhasil mengeksekusi SQL tersebut, lanjutkan ke Praktikum - Bagian 3.

Praktikum - Bagian 3: Percobaan SELECT Sub-Query

Langkah Keterangan
Untuk menampilkan data (test keanggotaan sub-query) yang berasal dari pemilihan tampilan
data lain digunakan tambahan statement IN. Eksekusi SQL berikut untuk menampilkan kolom
1
kode_dosen, kode_mk, kode_hari, jp_mulai dan jp_selesai pada tabel jadwal dimana
jp_selesai adalah jp_selesai yang paling lama pada tabel jadwal.

12
Untuk menampilkan data (perbandingan himpunan sub-query) yang berasal dari pemilihan
tampilan data lain digunakan tambahan operator. Eksekusi SQL berikut untuk menampilkan
2 kode_dosen, kode_mk, kode_hari, jp_mulai dan jp_selesai pada tabel jadwal berdasarkan
semua record kolom jp_selesai harus bernilai kurang dari jp_selesai yang dimiliki oleh
jp_selesai = 6 dari tabel jadwal.

3 Setelah berhasil mengeksekusi SQL tersebut, lanjutkan ke Praktikum - Bagian 4.

Praktikum - Bagian 4: Percobaan FUNGSI AGREGASI

Langkah Keterangan
Untuk menghitung rata-rata, digunakan tambahan statement AVG. Eksekusi SQL berikut untuk
1 menampilkan rata-rata durasi perkuliahan dalam satu jadwal perkuliahan sesuai kolom
jp_mulai, jp_selesai dari tabel jadwal.

13
Untuk menghitung nilai tertinggi, digunakan tambahan statement MAX. Eksekusi SQL berikut
2 untuk menampilkan dimulainya jam perkuliahan yang paling siang sesuai kolom jp_mulai dari
tabel jadwal.

Untuk menghitung nilai terendah, digunakan tambahan statement MIN. Eksekusi SQL berikut
3 untuk menampilkan berakhirnya jam perkuliahan yang paling cepat sesuai kolom jp_selesai dari
tabel jadwal.

Untuk menghitung total jam ajar digunakan tambahan statement SUM. Eksekusi SQL berikut
4 untuk menampilkan total jam ajar dosen dengan kode ‘D001’ sesuai jp_mulai, jp_selesai, dan
kode_dosen dari tabel jadwal.

Coba tampikan jadwal dosen dengan kode ‘D001’ dan pastikan apakah benar total jam ajar
dosen tersebut sesuai dengan perintah sum dengan nilai 14 pada gambar di atas.

Untuk menunjukkan jumlah baris pada kolom yang diinginkan digunakan COUNT(). Eksekusi
5
SQL berikut untuk menampilkan jumlah baris pada kolom kode_ruang dari tabel ruang.

14
6 Lanjutkan ke bagian Tugas!

Tugas
1. Himpunlah screenshot sintaksis SQL berikut hasil SELECT yang Anda dapat di komputer Anda pada
bagian Praktikum dalam sebuah laporan dengan format PDF!
2. Bagaimana sintaksis untuk menampilkan semua kolom jadwal pada hari kamis yang dimulai pada
pukul 08:40 ? Tunjukkan outputnya!
3. Berapakah jumlah dosen yang mengajar pada hari selasa! Tunjukkan sintaksis dan outputnya!
Kemudian tampilkan list semua kode dosen yang sesuai dengan kondisi tersebut! Tunjukkan
sintaksis dan outputnya!
4. Tampilkan kode dosen yang mengajar pada hari kamis dari tabel jadwal yang nama depanya di
awali dengan huruf A. gunakan operasi intersect! Tunjukkan sintaksis dan output dari pencarian
tersebut.
5. Tampilkan kode_ruang tertentu pada hari tertentu dengan diurutkan berdasarkan dengan kode jam
yang ter awal.

-- Selamat Mengerjakan –

Daftar Pustaka

• Dwi Puspitasari, S.Kom, “Buku Ajar Dasar Basis Data”, Program Studi Manajemen Informatika
Politeknik Negeri Malang, 2012.
• http://www.tutorialride.com
• https://www.w3schools.com/

15

Anda mungkin juga menyukai