0% menganggap dokumen ini bermanfaat (0 suara)
61 tayangan33 halaman

Laporan Praktikum Sistem Dan Teknologi Informasi "SQL Lanjut"

Dokumen tersebut merupakan laporan praktikum SQL lanjut yang meliputi pendahuluan, tinjauan pustaka, dan beberapa bab lainnya. Laporan ini membahas tentang join dan tipe-tipenya, fungsi aggregate function, serta penggunaan klausa where dan having dalam SQL.

Diunggah oleh

Sylvia Savira
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
61 tayangan33 halaman

Laporan Praktikum Sistem Dan Teknologi Informasi "SQL Lanjut"

Dokumen tersebut merupakan laporan praktikum SQL lanjut yang meliputi pendahuluan, tinjauan pustaka, dan beberapa bab lainnya. Laporan ini membahas tentang join dan tipe-tipenya, fungsi aggregate function, serta penggunaan klausa where dan having dalam SQL.

Diunggah oleh

Sylvia Savira
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 33

LAPORAN PRAKTIKUM

SISTEM DAN TEKNOLOGI INFORMASI


“SQL LANJUT”

Nama : Sylvia Savira


NIM : 205100300111106
Kelompok : 18
Asisten : Yessicha Kristina Silitonga

LABORATORIUM KOMPUTASI DAN ANALISIS SISTEM


JURUSAN TEKNOLOGI INDUSTRI PERTANIAN
FAKULTAS TEKNOLOGI PERTANIAN
UNIVERSITAS BRAWIJAYA
MALANG
2022
BAB I
PENDAHULUAN

1.1 Latar Belakang


Database (basis data) adalah kumpulan informasi yang disimpan di dalam
komputer secara sistematik sehingga dapat diperiksa menggunakan suatu
program komputer untuk memperoleh informasi dari basis data tersebut.
Perangkat lunak uang digunakan untuk mengelolah dan memanggil querybasis
data disebut sistem manajemen basis data (Database Management Sistem,
DBMS). Sistem basis data dipelajari dalam ilmu informasi. Konsep dasar dari basis
data adalah kumpulan dari catatancatatan, atau potongan dari pengetahuan.
Sebuah basis data memiliki penjelasan terstruktur dari jenis fakta yang tersimpan
didalamnya. Penjelasan ini disebut skema. Skema menggambarkan objek yang
diwakili suatu basis data, dan hubungan diantara objek tersebut. Ada banyak cara
untuk mengorganisasi skema, atau memodelkan struktur basis data. Model yang
umum digunakan sekarang adalah model relasional, yang menurut istilah Layman
mewakili semua informasi dalam bentuk tabeltabel yang saling berhubungan
dimana setiap tabel terdiri dari baris dan kolom (definisi yang sebenarnya
menggunakan terminology matematika). Dalam model ini, hubungan antar tabel
diwakili dengan menggunakan nilai yang sama antar tabel. Model lain, seperti
model hierarkis dan model jaringan, menggunakan cara untuk
merepresentasikannya dengan lebih jelas. Hubungan antar tabel. Istilah basis data
adalah Data dan perangkat lunak yang saling terhubung Harus disebut sistem
manajemen basis data (DBMS). Structured Query Language (SQL) adalah bahasa
yang digunakan untuk berkomunikasi dengan database. menangani ANSI
(American National Standards Institute), bahasa yang merupakan standar sistem
manajemen basis data relasional (RDBMS). Pernyataan SQL digunakan untuk
melakukan berbagai tugas, seperti: B. Update database atau melihat data dari
database. Hampir semua perangkat lunak database mengimplementasikan
bahasa SQL sebagai komponen kunci produknya, salah satunya MySQL.

1.2 Tujuan
Terdapat beberapa saran dalam praktikum materi SQL lanjutan ini.
Praktikan mampu memahami pengertian join dan tipe-tipenya. Kemudian praktikan
mampu menjelaskan fungsi aggregate function.
BAB II
TINJAUAN PUSTAKA

2.1 Apa yang Dimaksud dengan Join?


Join merupakan salah satu bentuk perintah di dalam SQL yang dipakai
untuk memadukan record dari beberapa tabel pada database. Inner Join adalah
pernyataan yang menghasilkan irisin yakni dataset baru dengan cara memadukan
nilai-nilai dari kolom di dua tabel berdasarkan pada syarat join. Inner join bisa
memberikan hasil hanya apabila ada data yang pas dengan data di tabel yang lain
(Elmatsani, 2018).
CROSS JOIN, INNER JOIN, FULL JOIN, LEFT JOIN, and RIGHT JOIN are
the five JOIN types used by SQL to join two tables in distinct ways. Using different
JOIN types, a JOIN clause can join more than two tables. The left table is referred
to as LT and the right table is referred to as RT in the JOIN keyword. To define
how the rows in LT and RT should be matched, use a condition (beginning with the
ON keyword) (Guo et al., 2018).
SQL menggunakan lima jenis JOIN untuk menghubungkan dua tabel
dengan cara yang berbeda: CROSS JOIN, INNER JOIN, FULL JOIN, LEFT JOIN,
dan RIGHT JOIN. Klausa JOIN dapat menghubungkan lebih dari dua tabel
menggunakan jenis JOIN yang berbeda. Kami merujuk ke tabel kiri dalam kata
kunci JOIN sebagai LT dan tabel kanan sebagai RT. Kondisi (dimulai dengan kata
kunci ON) dapat digunakan untuk menentukan bagaimana baris di LT dan RT
harus dicocokkan (Guo et al., 2018).

2.2 Sebutkan dan Jelaskan Beberapa Tipe Join!


Notasi join memiliki fungsi untuk menyatukan multi tabel dengan kunci
relasi dengan otomatis. Join ada 3 bentuk join yakni natural join/inner join, right
outer join, dan left outer join. Notasi aljabar dari join yakni A ⋈ B. Sedangkan untuk
sintaks dari Bahasa SQL nya yakni select*from A natural join B (Fatoni et al.,
2018).
Klausa join adalah operasi yang dipakai dalam perintah select untuk
mendapatkan gabungan data dari 2 tabel atau lebih. Tiap join query yang
dieksekusi akan menghasilkan jumlah data yang tidak sama. Untuk itu, setiap
penelitian yang dilakukan pengelompokkan join query didasarkan dengan jumlah
data yang dihasilkan yakni kelmpok satuan, puluhan, ribuan, ratusan, dan
seterusnya (Hartono et al., 2017).

2.3 Apa yang Dimaksud dengan Aggregate Function!


In SQL, an aggregate function calculates numerous values and returns a
single result. By evaluating a set of related instances, the aggregate function
returns a single expression as output. In both SQL and JSONiq, the GROUP BY
class is used to aggregate one or more values into a single value (Virothsaravanan
and palanisamy, 2019).
Fungsi agregat dalam SQL melakukan perhitungan pada beberapa nilai
dan mengembalikan satu nilai. Fungsi agregat mengembalikan ekspresi tunggal
sebagai output dengan mengevaluasi pada satu set instans serupa. Kelas GROUP
BY digunakan dalam SQL dan JSONiq untuk menggabungkan satu atau beberapa
nilai menjadi satu atau lebih nilai menjadi satu nilai tunggal (Virothsaravanan dan
palanisamy, 2019).
Although the aggregate constraint is an equality constraint, treating
inequality constraints as equality could result in overoptimistic variances.
Furthermore, because a linear constraint should only be imposed once, the
iterative technique used in the proposed algorithm will result in a singularity in the
calculation of the a posteriori covariance matrix. As a result, the suboptimal
approach for constructing the a posteriori covariance matrix is applied to avoid
these potential flaws (Yu et al., 2018).
Agregat constraint adalah kendala kesetaraan, perlakuan terhadap
kendala ketidaksetaraan karena kesetaraan dapat menghasilkan varians yang
terlalu optimal. Selanjutnya, sehubungan dengan strategi berulang yang diadopsi
dalam algoritma yang diusulkan, ini akan mengarah pada singularitas dalam
perhitungan matriks kovarian posteriori, karena kendala linier harus diterapkan
hanya sekali. Oleh karena itu, untuk mengatasi potensi kekurangan ini, metode
suboptimal untuk menghitung matriks kovarian posteriori digunakan (Yu et al.,
2018)

2.4 Sebutkan dan Jelaskan 5 Fungsi dari Aggregate Function!


Aggregate Function memiliki fungsi untuk mencari nilai data di suatu atribut
atau kumpulan atribut berupa jumlah data, rata-rata, nilai maksimal minimal, dan
total. Di dalam Aggregate Function sendiri terdapat 5 fungsi agregrasi. Bentuk
fungsi agregasi berupa SUM, AVG, COUNT, MAX, dan Min (Fatoni et al., 2018).
Fungsi agregasi adalah suatu perhitungan secara matematik yang
mengikutsertakan seperangkat nilia dan tidak nilai tuggal. Fungsi agregasi sering
dipakai dalam spreadsheet dan database dan meliputi jumlah atau rata-rata dari
serangkai angka. Perhitungan yang dilakukan oleh fungsi agregasi ini akan
mengembalikan nilai tunggal pada beberapa nilai. Ada beberapa fungsi dalam
fungsi agregasi yakni SUM untuk menghitung jumlah total, AVG untuk menghitung
rata-rata, MIN untuk mencari nilai paling rendah, MAX untuk mencari nilai paling
tinggi, dan COUNT untuk menghitung jumlah data (Santoso et al., 2017).

2.5 Pengertian dan Fungsi dari Sub Query!


Sub query adalah suatu pernyataan select yang merupakan pernyataan
dari insert, select, nested query dipakai untuk menangani suatu permasalahan
dalam query yang amat kompleks, bahkan nilai yang dilakukan oleh perintah insert
atau select belum atau tidak diketahui. Terdapat beberapa fungsi dari sub query
yakni digunakan untuk menerima data dari inline view, menyelesaikan persoalan
yang mana ada suatu nilai yang tidak dapat diketahui, dan menyalin data pada
suatu tabel ke tabel yang lainnya. Selain itu juga digunakan untuk menghapus
baris dalam satu tabel berdasarkan baris pada tabel yang lainnya dan untuk
mengambil data dalam tabel lain lalu kemudian di upgrade ke dalam tabel yang
ditujukan (Pariddudin dan Firdaus, 2019).
Sub query merupakan suatu query umum yang cursor hasilnya dipakai
untuk bagia dari query yang lain. Seperti contoh kita infin mencari produk yang
tidak pernah dipesan oleh orang Amerika. Maka langkah pertama yang dilakukan
adalah dengan membuat daftar produk apa saja yang sudah pernah dipesan oleh
perusahaan Amerika (Kuncoro, 2021).

2.6 Jelaskan Bagaimana Penggunaan Klausa Where atau Having!


Klausa WHERE dipakai untuk melakukan penyaringan akan data mana
saja yang akan dilakukan pemindahan ke dalam basis data dalam system aplikasi
baru. Salah satu contoh query yang dipakai dalam proses pemindahan data dalam
system yang baru adalah query migrasi data staff. Query ini dipakai untuk
memindahkan sata semua pegawai instansi dalam basis data yang lama ke basis
data yang baru. Data ini akan dangat dipakai dalam otentikasi saat akan
mengakses system (Mulyati et al., 2021).
Klausa HAVING akan memberikan batasan pada grup-grup yang akan
muncul dalam cursor. Klausa ini hampir sama dengan WHERE yang akan
memberikan Batasan jumlah baris yang akan muncul di cursor hasil. Akan tetapi
perbedaannya terletak pada klausa HAVING hanya dapat dipakai dalam klausa
GROUP BY, dan seluruh field yang dipakai dalam klausa HAVING juga harus ada
di daftar GROUP BY, ataupun sebagai argument dalam fungsi matematis
(Kuncoro, 2021).
BAB III
PRINT OUT DAN PEMBAHASAN

3.1 Studi Kasus


PT Elang Nusantara merupakan induk perusahaan yang memiliki total 8
pabrik gula yang tersebar di kota Sidoarjo (SDA), Surabaya (SBY), Malang
(MLG), Mojokerto (MJK). Kebutuhan tebu masing-masing pabrik dipasok dari 5
perkebunan tebu mitra. PT Elang Nusantara melayani pengiriman gula kepada
total 5 retail tujuan yaitu alfamart, indomaret, superindo, alfamidi, dan budimart.
PT Elang Nusantara berusaha untuk meningkatkan kepercayaan konsumen
dengan melakukan sertifikasi mutu nasional (SNI) dan Internasional (FSSC
22000), namun hingga kini belum semua pabrik mendapatkan sertifikasi yang
lengkap.
Anda adalah seorang admin di perusahaan PT Elang Nusantara yang bertugas
untuk mengelola data-data sebagai berikut :
*= Primary Key
Tabel : pabrik
id_PG* nama_PG alamat_pabrik kap_gilin produksi_gu id_kebun
g la
RG raja gula SDA 4000 1000 A
CJ candi jaya SBY 5000 3800 C
MI merak indo SDA 2500 2000 B
SJ sejahtera MLG 4500 4000 D
MJ madu jaya MLG 3800 3200 D
AJ agro jaya SBY 2600 2500 C
SM sumber SBY 2800 2700 D
manis
MA manis MJK 4500 4000 E
abadi

Tabel : pengiriman
id_pengiriman* tujuan kuantitas id_PG
1 Alfamart 100 MA
2 Indomaret 200 MA
3 Superindo 300 CJ
4 Superindo 400 SJ
5 Alfamart 100 MA
6 Indomaret 200 MA
7 Alfamidi 300 SJ
8 Alfamart 400 SM
9 Alfamart 100 SM
0 budimart 100 AJ

Tabel : sertifikasi_mutu
no_sertifikat jenis_sertifik id_PG
* at
SN01 SNI CJ
SN02 SNI MI
SN03 SNI SJ
SN04 SNI MJ
SN05 SNI AJ
SN06 SNI SM
SN07 SNI MA
FS01 FSSC 22000 MA
FS02 FSSC 22000 SJ
FS03 FSSC 22000 SM

Direktur perusahaan meminta anda untuk membuat laporan berdasarkan tabel-


tabel diatas menggunakan XAMPP, berikut ini adalah ketentuan-ketentuan yang
diminta:
SQL Lanjut :
Gunakan kembali database dan tabel-tabel studi kasus yang telah dibentuk pada
laporan SQL Dasar
1. Tampilkan nama pabrik, kapasitas giling dan produksi gula. Data yang
ditampilkan adalah pada pabrik yang telah tersertifikasi FSSC 22000.
2. tampilkan jenis-jenis sertifikat (tanpa pengulangan) dan jumlah pabrik yang telah
tersertifikasi oleh masing-masing jenis tersebut
3. Tampilkan jumlah rata_rata_giling , dan produksi_gula_tertinggi
4. Tampilkan tujuan pengiriman dan jumlah total kuantitas masing-masing
pengiriman, data dikelompokkan berdasarkan tujuan pengiriman yang memiliki
total kuantitas lebih dari 400
5. Tampilkan nama_pg dan tujuan pengiriman untuk setiap pabrik yang
beralamatkan di SBY dan bersertifikat SNI
6. Tampilkan id_pengiriman dan tujuan yang memiliki kuantitas lebih rendah
daripada rata-rata kuantitas pengiriman keseluruhan. Data yang ditampilkan
hanya untuk pengiriman yang berasal dari pabrik ‘MA’ (petunjuk : gunakan
subquery)
7.Sebuah pabrik dikatakan layak apabila memiliki efisiensi diatas rata-rata
efisiensi keseluruhan, tampilkan berapa persen pabrik yang dikatakan layak
(Petunjuk: gunakan subquery, persentase pabrik layak = jumlah pabrik yang layak/
total jumlah pabrik, efisiensi = produksi_gula ÷ kap_giling).

3.2 Jawaban
3.2.1 Tampilkan nama pabrik, kapasitas giling dan produksi gula. Data yang
ditampilkan adalah pada pabrik yang telah tersertifikasi FSSC 22000

Untuk menampilkan nama pabrik, kapasitas giling dan produksi gula


dimana data yang ditampilkan adalah pada pabrik yang telah tersertifikasi FSSC
22000. Untuk mendapatkan output dari perintah ini, terdapat dua query yang
digunakan dalam perintah ini. Query pertama adalah menyatukan tabel pabrik dan
tabel sertifikasi mutu dengan bentuk perintah “select*from tabel_pabrik P join
tabel_sertifikasi_mutu S on P.id_PG=S.id-PG;” lalu enter. Kemudian bentuk
query kedua adalah “select P.nama_PG, P.kap_giling , P.produksi_gula from
tabel_pabrik P join tabel_sertifikasi_mutu S on P.id_PG=S.id_PG where
jenis_sertifikat in (‘FSSC 22000);” untuk menampilkan hasil sesuai dengan
perintah. Kemudian enter dan didapatkan output adalah pabrik yang sudah
tersertifikasi FSSC 22000 adalah pabrik manis abadi dengan kapasitas giling 4500
dan produksi gula sebanyak 4000, pabrik sejahtera dengan kapasitas giling 4500
dan produksi gula sebanyak 4000, dan pabrik madu sumber manis dengan
kapasitas giling 2800 dan produksi gula sebanyak 2700. Perintah ini menggunakan
beberapa operator dan klausa. Klausa yang digunakan adalah select, where, dan
join. Select digunakan untuk untuk menentukan kolom tabel mana yang akan
ditampilkan diikuti dengan from yang akan menentukan dimana letak kolom yang
dicari. Kemudian klausa where digunakan untuk menyaring data berdasarkan
kriteria tertentu. Join digunakan untuk menggabungkan baris dari dua atau lebih
tabel berdasarkan kolom terkait diantara mereka. Kemudian ada operator in
digunakan pada perintah select yang berguna melakukan pencocokan dengan
salah satu yang ada di suatu tabel. Lalu ada tanda “=” yang digunakan untuk
menunjukkan hubungan sama dengan dari.

3.2.2 Tampilkan jenis-jenis sertifikat (tanpa pengulangan) dan jumlah pabrik


yang telah tersertifikasi oleh masing-masing jenis tersebut

Untuk menampilkan jenis-jenis sertifikat (tanpa pengulangan) dan jumlah


pabrik yang telah tersertifikasi oleh masing-masing jenis tersebut, bentuk query
yang digunakan adalah “select jenis_sertifikat, count (id_PG) as jumlah_pabrik
from tabel_sertifikasi_mutu group by jenis_sertifikat;” kemudian tekan enter.
Hasil output yang didapatkan adalah pabrik yang tersertifikasi FFSC 22000
berjumlah 3 pabrik dan pabrik yang tersertifikasi SNI berjumlah 7. Terdapat
beberapa klausa yang digunakan pada perintah ini yakni select dan group by.
Select digunakan untuk untuk menentukan kolom tabel mana yang akan
ditampilkan diikuti dengan from yang akan menentukan dimana letak kolom yang
dicari. Lalu group by digunakan untuk mengelompokkan data dalam sebuah
kolom yang ditunjuk. Kemudian ada operator as digunakan untuk mengubah nama
atribut yang dituju.
3.2.3 Tampilkan jumlah rata_rata_giling , dan produksi_gula_tertinggi

Untuk menampilkan jumlah rata-rata giling dan produksi gula


tertinggi, bentuk query yang digunakan adalah “select AVG(kap_giling) as
rerata_giling, max(produksi_gula) as produksi_gula_tertinggi from
tabel_pabrik;” kemudian enter. Maka hasil output yang didapatkan jumlah
rata-rata giling adalah 3671,49 dan produksi gula tertinggi adalah sebanyak
4000. Terdapat beberapa klausa yang digunakan dalam perintah ini yakni
select, avg dan max. Select digunakan untuk untuk menentukan kolom tabel
mana yang akan ditampilkan diikuti dengan from yang akan menentukan dimana
letak kolom yang dicari. Kemudian max digunakan untuk menampilkan nilai
tertinggi dari sekumpulan data. Lalu ada avg digunakan untuk mencari rata-
rata pada suatu kolom yang tipenya data angka atau integer. Kemudia ada
operator as yang digunakan untuk mengubah nama atribut yang dituju.

3.2.4 Tampilkan tujuan pengiriman dan jumlah total kuantitas masing-masing


pengiriman, data dikelompokkan berdasarkan tujuan pengiriman yang
memiliki total kuantitas lebih dari 400

Untuk menampilkan tujuan pengiriman dan jumlah total kuantitas masing-


masing pengiriman, data dikelompokkan berdasarkan tujuan pengiriman yang
memiliki total kuantitas lebih dari 400, maka bentuk query yang bisa dituliskan
adalah “select tujuan, sum(kuantitas) as total_kuantitas from
tabel_pengiriman group by tujuan having sum(kuantitas)>400;” kemudian
tekan enter. Maka hasil output yang didapatkan adalah tujuan yang memiliki total
kuantitas lebih dari yakni alfamart dengan total kuantitas 700 dan superindo
dengan total kuantitas sebanyak 700. Terdapat beberapa klausa yang digunakan
adalah select, sum, having dan group by. Select digunakan untuk untuk
menentukan kolom tabel mana yang akan ditampilkan diikuti dengan from yang
akan menentukan dimana letak kolom yang dicari. Sum digunakan untuk
menjumlahkan nilai. group by digunakan untuk mengelompokkan data dalam
sebuah kolom yang ditunjuk. Having digunakan untuk menentukan kondisi bagi
group by. Tanda “>” menunjukkan lebih dari.

2.5 Tampilkan nama_pg dan tujuan pengiriman untuk setiap pabrik yang
beralamatkan di SBY dan bersertifikat SNI

Untuk menampilkan nama_pg dan tujuan pengiriman untuk setiap pabrik


yang beralamatkan di SBY dan bersertifikat SNI, maka bentuk query yang bisa
dituliskan adalah “select PG.nama_PG ,P.tujuan from tabel_pengiriman P join
tabel_pabrik PG on P.id_PG=PG.id_PG join tabel_sertifikasi_mutu S on
PG.id_PG=S.id_PG where alamat_pabrik='SBY' and jenis_sertifikat='SNI';”
kemudian tekan enter. Maka hasil output yang didapatkan adalah pabrik agro jaya
dengan tujuan budimart, pabrik candi jaya dengan tujuan superindo, pabrik madu
sumber manis dengan tujuan alfamart, dan pabrik sumber manis dengan tujuan
alfamart. Terdapat beberapa klausa yang digunakan yakni select, join, where.
Select digunakan untuk untuk menentukan kolom tabel mana yang akan
ditampilkan diikuti dengan from yang akan menentukan dimana letak kolom yang
dicari. Join digunakan untuk menggabungkan baris dari dua atau lebih tabel
berdasarkan kolom terkait diantara mereka. Where digunakan untuk menyaring
data berdasarkan kriteria tertentu. Operator in digunakan pada perintah select
yang berguna melakukan pencocokan dengan salah satu yang ada di suatu tabel.

3.2.6 Tampilkan id_pengiriman dan tujuan yang memiliki kuantitas lebih


rendah daripada rata-rata kuantitas pengiriman keseluruhan. Data yang
ditampilkan hanya untuk pengiriman yang berasal dari pabrik ‘MA’

Untuk menampilkan id_pengiriman dan tujuan yang memiliki kuantitas lebih


rendah daripada rata-rata kuantitas pengiriman keseluruhan. Data yang
ditampilkan hanya untuk pengiriman yang berasal dari pabrik ‘MA’, bentuk query
yang bisa dituliskan adalah “select id_pengiriman, tujuan from
tabel_pengiriman where kuantitas<(select AVG(kuantitas) from
tabel_pengiriman) and id_PG='MA';” kemudian tekan enter. Maka hasil output
yang didapatkan adalah yang memiliki kuantitas rendah daripada rata-rata
kuantitas pengiriman keseluruhan adalah id_pengiriman 1 dengan tujuan alfamart,
2 dengan tujuan indomart, 5 dengan tujuan alfamart, dan 6 dengan tujuan
indomart. Terdapat beberapa klausa yang digunakan dalam perintah yakni select
dan where. Select digunakan untuk untuk menentukan kolom tabel mana yang
akan ditampilkan diikuti dengan from yang akan menentukan dimana letak kolom
yang dicari. Where digunakan untuk menyaring data berdasarkan kriteria tertentu.
Kemudian ada operator and yang menyatakan “dan”. Lalu ada tanda “=” yang
menyatakan sama dengan.

3.2.7 Sebuah pabrik dikatakan layak apabila memiliki efisiensi diatas rata-
rata efisiensi keseluruhan, tampilkan berapa persen pabrik yang dikatakan
layak (Petunjuk: gunakan subquery, persentase pabrik layak = jumlah pabrik
yang layak/ total jumlah pabrik, efisiensi = produksi_gula ÷ kap_giling)

Untuk menampilkan berapa persen pabrik yang dikatakan layak, maka


bentuk query yang bisa dituliskan adalah “select
count((produksi_gula/kap_giling)>(select AVG(produksi_gula/kap_giling)
from tabel_pabrik)) / count(id_PG) as persentase_pabrik_layak from
tabel_pabrik;” kemudian tekan enter. Maka hasil output output yang didapatkan
adalah persentese pabrik yang layak adalah 1%. Terdapat beberapa klausa yang
digunakan dalam perintah ini yakni select, count, dan avg. Select digunakan
untuk untuk menentukan kolom tabel mana yang akan ditampilkan diikuti dengan
from yang akan menentukan dimana letak kolom yang dicari. Count digunakan
untuk menghitung banyaknya baris data yang ada dalam sebuah kolom. Avg
digunakan untuk mencari rata-rata pada suatu kolom yang tipenya data
angka atau integer. Operator as yang digunakan untuk mengubah nama atribut
yang dituju. Kemudian ada operator “/” yang digunakan untuk pembagian, “>”
menyatakan lebih dari, dan “=” menyatakan sama dengan.
BAB IV
PENUTUP

4.1 Kesimpulan
Tujuan pada materi SQL lanjut ini adalah memahami pengertian join dan
tipe-tipenya dan mampu menjelaskan fungsi aggregate function.. Setelah
membangun database tabel pabrik, tabel pengiriman, dan tabel sertifikasi mutu,
maka Langkah selanjutnya adalah menjawab 7 kasus. Kasus pertama
mendapatkan hasil hasil pabrik yang sudah tersertifikasi FSSC 22000 adalah
pabrik manis abadi dengan kapasitas giling 4500 dan produksi gula sebanyak
4000, pabrik sejahtera dengan kapasitas giling 4500 dan produksi gula sebanyak
4000, dan pabrik madu sumber manis dengan kapasitas giling 2800 dan produksi
gula sebanyak 2700. Kasus kedua bentuk query nya adalah “select jenis_sertifikat,
count (id_PG) as jumlah_pabrik from tabel_sertifikasi_mutu group by
jenis_sertifikat;” dengan hasil output adalah pabrik yang tersertifikasi FFSC 22000
berjumlah 3 pabrik dan pabrik yang tersertifikasi SNI berjumlah 7. Kasus ketiga
dengan output yakni jumlah rata-rata giling adalah 3671,49 dan produksi gula
tertinggi adalah sebanyak 4000. Kasus keempat hasilnya adalah pabrik agro jaya
dengan tujuan budimart, pabrik candi jaya dengan tujuan superindo, pabrik madu
sumber manis dengan tujuan alfamart, dan pabrik sumber manis dengan tujuan
alfamart. Kasus kelima didapatkan hasil adalah pabrik agro jaya dengan tujuan
budimart, pabrik candi jaya dengan tujuan superindo, pabrik madu sumber manis
dengan tujuan alfamart, dan pabrik sumber manis dengan tujuan alfamart. Kasus
keenam dengan hasil yang memiliki kuantitas rendah daripada rata-rata kuantitas
pengiriman keseluruhan adalah id_pengiriman 1 dengan tujuan alfamart, 2 dengan
tujuan indomart, 5 dengan tujuan alfamart, dan 6 dengan tujuan indomart. Kasus
keenam bentuk query nya adalah “select count((produksi_gula/kap_giling)>(select
AVG(produksi_gula/kap_giling) from tabel_pabrik)) / count(id_PG) as
persentase_pabrik_layak from tabel_pabrik;” dengan hasil persentese pabrik yang
layak adalah 1%.

4.2 Saran
Terdapat beberapa saran pada materi SQL lanjutan ini. Materi pada
praktikum ini perlu dipahami untuk memudahkan proses running. Proses penulisan
query pada SQL harus teliti agar tidak terjadi error.
DAFTAR PUSTAKA

Elmatsani HM. 2018. Algoritma decision table menggunakan inner join bersyarat
untuk klasifikasi hasil penilaian angka kredit perekayasa. Jurnal Teknologi
Informasi dan Ilmu Komputer 5(2): 177-184
Fatoni CS , Astuti D, Kusrini. 2018. Analisa optimasi Bahasa sql dengan indexing
pada kasus mahasiswa layak menerima beasiswa pada perguruan tinggi.
Junral Teknologi Informasi dan Multimedia 3(1): 1-6
Guo Y, Li N, Ouffut J, Motro A. 2018, automiatically repairing sql faults. Journal of
IEEE 9(1): 500-511
Hartono N, Kurniadi W, Kasma S. 2017. Optimasi join query pada basis data (studi
kasus : basis data system informasi manajemen universaitas cokroaminoto
palopo). Jurnal Semantik 2(5): 209-215
Kuncoro AA. 2021. Pengantar Bahasa Query. Yayasan Prima Agus Teknik,
Semarang
Mulyati S, Sujatmoko BA, Wira TI, Afif R, Pratama RA. 2020. Normalisasi database
dan migrasi database untuk memudahkan manajemen data. Jurnal Sebatik
2(6): 124-129
Pariddudin A dan Firdaus M. 2019. Penerapan metode nested query untuk
menentukan siswa penerima bantuan pip. Jurnal Ilmiah Teknologi 9(2): 44-
52
Santoso W, Intan R, Yulia. 2017. System rekomendasi konsentrasi berdasarkan
aggregate function multi criteria pada prodi informatika uk petra. Jurnal
Teknologi Industri 6(2): 1-7
Vinothsaravanan R dan palanysamy C. 2020. Extracting information from json
database as simple as extracting in sql using jsoniq. Journal of IEEE 7(11):
1-4
Yu H, Li Z, Wang J, Han H. 2018. Data fusion for a gps/ins tightly coupled
positioning system with equality and inequality constraints using an
aggregate constraint unscented Kalman filter. Journal of Spatial Science
10(1): 1-23
LAMPIRAN
2.1 P1
2.1 P2
2.2 P1
2.2 P2
2.3 P1
2.4 P1
2.4 P2
25 P1
2.5 P1
2.5 P2
2.6 P1
2.6 P2

Anda mungkin juga menyukai