0% menganggap dokumen ini bermanfaat (0 suara)
23 tayangan32 halaman

Basis Data Xii

Dokumen tersebut membahas tentang basis data dan SQL. Terdapat penjelasan mengenai fungsi agregasi seperti count, sum, avg, min, max serta contoh-contoh penggunaannya pada tabel orders untuk melakukan analisis data. Juga dijelaskan fungsi non-agregasi seperti concat, left, right, substring untuk manipulasi data.
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 PPTX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
23 tayangan32 halaman

Basis Data Xii

Dokumen tersebut membahas tentang basis data dan SQL. Terdapat penjelasan mengenai fungsi agregasi seperti count, sum, avg, min, max serta contoh-contoh penggunaannya pada tabel orders untuk melakukan analisis data. Juga dijelaskan fungsi non-agregasi seperti concat, left, right, substring untuk manipulasi data.
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 PPTX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 32

BASIS DATA

XII / Rekayasa Perangkat Lunak


Laragon Database
• Username : root
• Password : <kosong>
kemudian dipilih tombol log in
Materi
SEMESTER 1
BAB 1 BEKERJA DENGAN FUNGSI
BAB 2 PENGGUNAAN SQL UNTUK MULTITABLE DAN MANIPULASI DATA
SEMESTER 2
BAB 3 SQL PADA BASIS DATA CLIENT SERVER DAN ARSITEKTUR RDBMS
BAB 4 KONEKSI CLIENT SERVER, REPLIKASI DAN SISTEM KEAMANAN
RDBMS
BAB 1 BEKERJA DENGAN FUNGSI
1. FUNGSI AGREGASI
2. FUNGSI NON-AGREGASI
FUNGSI AGREGASI
adalah fungsi yang bekerja untuk mendapatkan nilai dari sekumpulan
data yang telah dikelompokkan berdasarkan sebuah kolom atau
gabungan kolom.
Fungsi agregasi standar SQL
1. COUNT (jumlah data)
2. SUM (total data)
3. AVG (rata-rata data)
4. MIN (nilai minimum/nilai terendah)
5. MAX (nilai maximum/nilai tertinggi)
COUNT (JUMLAH DATA)
• Untuk menghitung jumlah record yang mempunyai nilai (bukan NULL)
dari kolom tertentu.
• Sintak :
Untuk mencari jumlah data dari 1 kolom
SELECT COUNT(nama_kolom) AS nama_alias FROM nama_tabel
Untuk mencari jumlah data lebih dari 1 kolom, misal 2 kolom
SELECT COUNT(nama_kolom) AS nama_alias, COUNT(nama_kolom)
AS nama_alias FROM nama_tabel
SUM (TOTAL DATA)
• Untuk menghitung jumlah dari data yang terdapat di kolom tertentu,
dengan syarat hanya dapat digunakan pada kolom yang mempunyai
data dengan tipe numerik.
• Sintak :
SELECT SUM(nama_kolom) AS nama_alias FROM nama_tabel
AVG (RATA-RATA DATA)
• Untuk menghitung rata-rata dari data yang terdapat di kolom
tertentu, dengan syarat hanya dapat digunakan pada kolom yang
mempunyai data dengan tipe numerik.
• Sintak :
SELECT AVG(nama_kolom) AS nama_alias FROM nama_tabel
MIN (NILAI MINIMUM)
• Untuk menghitung nilai minimum dari data yang terdapat di kolom
tertentu, dengan syarat hanya dapat digunakan pada kolom yang
mempunyai data dengan tipe numerik.
• Sintak :
SELECT MIN(nama_kolom) AS nama_alias FROM nama_tabel
MAX (NILAI MAXIMUM)
• Untuk menghitung nilai maximum dari data yang terdapat di kolom
tertentu, dengan syarat hanya dapat digunakan pada kolom yang
mempunyai data dengan tipe numerik.
• Sintak :
SELECT MAX(nama_kolom) AS nama_alias FROM nama_tabel
FUNGSI NON-AGREGASI
1. Menggabungkan Dua Kolom
2. Memotong Data
3. Membulatkan Angka
MENGGABUNGKAN DUA KOLOM
• CONCAT atau CONCATENATE digunakan untuk menggabungkan dua
atau lebih data.
• Sintak :
SELECT nama_kolom, CONCAT(nama_kolom1, nama_kolom2) AS
nama_alias FROM nama_tabel
Ket :
nama_kolom1 dan nama_kolom2 adalah data yang akan digabungkan
menggunakan fungsi CONCAT.
MEMOTONG DATA
• LEFT : kiri, digunakan untuk memotong data yang dimulai dari sebelah
kiri.
• Sintak :
SELECT LEFT(nama_kolom, x) FROM nama_tabel
Ket :
LEFT(nama_kolom, x) : x adalah jumlah karakter yang akan dipotong
mulai dari sebelah kiri
Contoh : MAIMUN <- 3 karakter menjadi MAI
MEMOTONG DATA
• RIGHT : kanan, digunakan untuk memotong data yang dimulai dari
sebelah kanan.
• Sintak :
SELECT RIGHT(nama_kolom, x) FROM nama_tabel
Ket :
RIGHT(nama_kolom, x) : x adalah jumlah karakter yang akan dipotong
mulai dari sebelah kanan
Contoh : MAIMUN -> 3 karakter menjadi MUN
MEMOTONG DATA
• SUBSTRING : digunakan untuk memotong data sejumlah x karakter
yang dimulai dari karakter ke-a yang dihitung dari sebelah kiri.
• Sintak :
SELECT SUBSTRING(nama_kolom, a, x) FROM nama_tabel
Ket :
SUBSTRING(nama_kolom, a, x) : x adalah jumlah karakter yang akan
dipotong mulai dari sebelah kiri, sedangkan a adalah urutan karakter
yang akan dipotong.
Contoh : MAIMUN <- 2 : 3, maka akan menjadi UN
MEMBULATKAN ANGKA
• CEILING : digunakan untuk membulatkan bilangan/angka numerik ke
atas atau pecahan ke atas.
• Sintak :
SELECT CEILING(nama_kolom) AS nama_alias FROM nama_tabel
MEMBULATKAN ANGKA
• FLOOR : digunakan untuk membulatkan bilangan/angka numerik ke
bawah atau desimal ke bawah.
• Sintak :
SELECT FLOOR(nama_kolom) AS nama_alias FROM nama_tabel
MEMBULATKAN ANGKA
• ROUND : digunakan untuk membulatkan bilangan/angka numerik
sampai jumlah digit tertentu sesuai dengan pilihan yang dibuat.
• Sintak :
SELECT ROUND(nama_kolom, x) AS nama_alias FROM nama_table
Ket :
ROUND(nama_kolom, x) : x adalah nilai pembulatan.
Contoh : 57,4 <-> 0 , maka 57,4
57,4 <-> -1, maka 60
57,4 <-> 2, maka 57,4
TABEL ORDERS
OrderID ProductID ProductName UnitPrice Quantity Disc(%) Total
10256 41 MAIMUN 7,70 16 0,25 92,4
10256 77 SOLEHUDDIN AZWAR 10,40 12 0 124,8
Buatlah basis data dengan nama employes_db menggunakan MySQL, kemudian ikuti instruksi untuk
membuat tabel Orders sesuai dengan data tersebut di atas!

tb_orders
OrderID : INT(11)
ProductID : INT(11)
ProductName : VARCHAR(35)
UnitPrice : FLOAT(5)
Quantity : INT(11)
Disc : FLOAT(5)
Total : FLOAT(5)
SQL AGREGASI SUM
• Mencari jumlah Total yang ada pada tabel Orders :
SELECT SUM(Total) AS Total_Orders FROM
tb_orders;
• Mencari jumlah Unit Price dan Quantity pada tabel Orders :
SELECT SUM(UnitPrice) AS Total_Unit,
SUM(Quantity) AS Qty FROM tb_orders;
SQL AGREGASI COUNT
• Mencari jumlah Unit Price yang ada pada tabel Orders :
SELECT COUNT(UnitPrice) AS Jumlah_Unit FROM
tb_orders;
• Hasil :
Jumlah_Unit
2
SQL AGREGASI AVG
• Mencari rata-rata Total yang ada pada tabel Orders :
SELECT AVG(Total) AS Rata_Total FROM tb_orders;
• Hasil :
Rata_Total
108.60000228881836
SQL AGREGASI MIN
• Mencari nilai terkecil Unit Price yang ada pada tabel Orders :
SELECT MIN(UnitPrice) AS Harga_Terkecil FROM
tb_orders;
• Hasil :
Harga_Terkecil
7,7
SQL AGREGASI MAX
• Mencari nilai terbesar Unit Price yang ada pada tabel Orders :
SELECT MAX(UnitPrice) AS Harga_Terbesar FROM
tb_orders;
• Hasil :
Harga_Terbesar
10,4
SIMPAN DATA TABEL ORDERS
INSERT INTO tb_orders (OrderID, ProductID, ProductName, UnitPrice,
Quantity, Disc, Total) VALUES (10256, 77, 'Original Frankfurter', 10.40,
12, 0, 124.8), (10257, 27, 'Schoggi Schokolade', 35.10, 25, 0, 877.5),
(10257, 70, 'Outback Larger', 12.00, 21, 0.25, 189), (10257, 77, 'Original
Frankfurter', 10.40, 25, 0, 260), (10258, 2, 'Chang', 15.20, 50, 0.2, 608),
(10258, 5, 'Chef Anton\'s Gumbo Mix', 17.00, 65, 0.2, 884), (10258, 32,
'Mascarpone Fabioli', 25.60, 6, 0.2, 122.88), (10259, 21, 'Sir Rodney\'s
Scones', 8.00, 10, 0, 80), (10259, 2, 'Chang', 15.20, 100, 0.2, 1216),
(10260, 41, 'Jack\'s Clam Chowder', 7.70, 25, 0.25, 144.375), (10260, 27,
'Schoggi Schokolade', 35.10, 15, 0, 526.5), (10260, 62, 'Tarte au sucre',
39.40, 15, 0.25, 443.25), (10260, 70, 'Outback Lager', 12.00, 30, 0.25,
270)
JAWABAN 1
SELECT * FROM tb_orders WHERE Total >= 500;
JAWABAN 2
SELECT * FROM tb_orders WHERE Quantity <= 30;
JAWABAN 3
SELECT SUM(Total) AS Total_41 FROM tb_orders WHERE ProductID = 41;
SELECT SUM(Total) AS Total_77 FROM tb_orders WHERE ProductID = 77;
SELECT SUM(Total) AS Total_27 FROM tb_orders WHERE ProductID = 27;
SELECT SUM(Total) AS Total_70 FROM tb_orders WHERE ProductID = 70;
SELECT SUM(Total) AS Total_2 FROM tb_orders WHERE ProductID = 2;
SELECT SUM(Total) AS Total_5 FROM tb_orders WHERE ProductID = 5;
SELECT SUM(Total) AS Total_32 FROM tb_orders WHERE ProductID = 32;
SELECT SUM(Total) AS Total_21 FROM tb_orders WHERE ProductID = 21;
SELECT SUM(Total) AS Total_62 FROM tb_orders WHERE ProductID = 62;
JAWABAN 4
SELECT COUNT(OrderID) AS Jumlah_Transaksi, MAX(Total) AS
Nilai_Penjualan_Tertinggi, MIN(Total) AS Nilai_Penjualan_Terendah,
AVG(Total) AS Nilai_Penjualan_Rata FROM tb_orders;
JAWABAN 5
SELECT MIN(Total) AS Nilai_Penjualan_Terkecil, AVG(Total) AS
Nilai_Penjualan_Rata, MAX(Total) AS Nilai_Penjualan_Terbesar FROM tb_orders
WHERE ProductID = 41;
SELECT MIN(Total) AS Nilai_Penjualan_Terkecil, AVG(Total) AS
Nilai_Penjualan_Rata, MAX(Total) AS Nilai_Penjualan_Terbesar FROM tb_orders
WHERE ProductID = 77;
SELECT MIN(Total) AS Nilai_Penjualan_Terkecil, AVG(Total) AS
Nilai_Penjualan_Rata, MAX(Total) AS Nilai_Penjualan_Terbesar FROM tb_orders
WHERE ProductID = 27;
SELECT MIN(Total) AS Nilai_Penjualan_Terkecil, AVG(Total) AS
Nilai_Penjualan_Rata, MAX(Total) AS Nilai_Penjualan_Terbesar FROM tb_orders
WHERE ProductID = 70;
SELECT MIN(Total) AS Nilai_Penjualan_Terkecil, AVG(Total) AS
Nilai_Penjualan_Rata, MAX(Total) AS Nilai_Penjualan_Terbesar FROM tb_orders
WHERE ProductID = 2;
JAWABAN 5
SELECT MIN(Total) AS Nilai_Penjualan_Terkecil, AVG(Total) AS
Nilai_Penjualan_Rata, MAX(Total) AS Nilai_Penjualan_Terbesar FROM tb_orders
WHERE ProductID = 5;
SELECT MIN(Total) AS Nilai_Penjualan_Terkecil, AVG(Total) AS
Nilai_Penjualan_Rata, MAX(Total) AS Nilai_Penjualan_Terbesar FROM tb_orders
WHERE ProductID = 32;
SELECT MIN(Total) AS Nilai_Penjualan_Terkecil, AVG(Total) AS
Nilai_Penjualan_Rata, MAX(Total) AS Nilai_Penjualan_Terbesar FROM tb_orders
WHERE ProductID = 21;
SELECT MIN(Total) AS Nilai_Penjualan_Terkecil, AVG(Total) AS
Nilai_Penjualan_Rata, MAX(Total) AS Nilai_Penjualan_Terbesar FROM tb_orders
WHERE ProductID = 62;

Anda mungkin juga menyukai