0% menganggap dokumen ini bermanfaat (0 suara)
142 tayangan11 halaman

Dqlab Mysql

Dokumen ini membahas tentang fungsi skalar dan fungsi agregat dalam SQL. Fungsi skalar mengembalikan nilai tunggal dari suatu nilai input, sedangkan fungsi agregat melakukan perhitungan pada sekelompok nilai dan mengembalikan nilai tunggal. Dokumen ini memberikan contoh penggunaan berbagai fungsi skalar matematika seperti CEILING(), FLOOR(), ROUND(), SQRT(), dan MOD() pada tabel siswa untuk mempraktikkannya.

Diunggah oleh

ADE FITRA ANGGRAINI
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 DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
142 tayangan11 halaman

Dqlab Mysql

Dokumen ini membahas tentang fungsi skalar dan fungsi agregat dalam SQL. Fungsi skalar mengembalikan nilai tunggal dari suatu nilai input, sedangkan fungsi agregat melakukan perhitungan pada sekelompok nilai dan mengembalikan nilai tunggal. Dokumen ini memberikan contoh penggunaan berbagai fungsi skalar matematika seperti CEILING(), FLOOR(), ROUND(), SQRT(), dan MOD() pada tabel siswa untuk mempraktikkannya.

Diunggah oleh

ADE FITRA ANGGRAINI
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 DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 11

DQLab

Fundamental SQL Using FUNCTION and GROUP BY


BAGIAN 1

Fungsi Scalar vs Fungsi Aggregate


“Bagian fungsi nih, Nja. Boleh kasih tahu perannya apa dalam pengolahan data?” Aku mulai bertanya.
“Oke, begini Aksara. Fungsi adalah metode yang digunakan untuk melakukan operasi data di database. Operasi ini bisa
berupa kalkulasi numerik seperti sum, count, avg, etc; atau operasi non-numerik seperti string concatenations dan sub-
strings. SQL Function dapat dibagi ke dalam 2 kategori, yaitufungsi scalar dan fungsi aggregate.”
Penjelasan Senja mengundang pertanyaan baru di benakku.
 
“Hm, apa aja sih bedanya fungsi skalar dan fungsi aggregate?”
“Fungsi skalar dalam SQL digunakan untuk mengembalikan nilai tunggal (single value) dari suatu nilai input yang
diberikan, sedangkan fungsi agregat dalam SQL digunakan untuk melakukan perhitungan pada sekelompok nilai dan
kemudian mengembalikan nilai tunggal. Nah, biar lebih mudah dipahami mari kita bahas dan praktekkan fungsi-fungsi
dari kedua kategori ini.”
 
Aku mengangguk. “Oke, Nja. Sejauh ini paham. Aku coba pelajari lagi yah modulnya. Kalau ada yang bingung, boleh
kutanya lagi?”
“Silakan”

Fungsi Skalar Matematika


“Nja, ini aku nemu jenis fungsi lain. Fungsi skalar matematika. Ini apa yah?” sahutku sekali lagi.
“Kamu sudah belajar sampai fungsi skalar ya, Aksara. Oke  kalau begitu fungsi skalar pertama yang akan kita bahas
adalah fungsi skalar untuk numerik value. Fungsi ini umumnya digunakan jika kita ingin melakukan operasi matematika di
SQL secara cepat dan efektif. Di SQL sendiri ada banyak fungsi matematika,” jelas Senja rinci.
 
“Memangnya fungsi-fungsi apa saja yang bisa dilakukan di SQL?”
“Untuk mengecek fungsi-fungsi apa saja yang bisa dilakukan di SQL, kita bisa membuka dokumentasi fungsi SQL di
sini: https://www.postgresql.org/docs/9.5/functions-math.html, untuk postgresql database dan di
sini: https://dev.mysql.com/doc/refman/8.0/en/mathematical-functions.html, untuk mysql database. Nah, sebagai bahan
praktik kamu agar lebih paham kamu bisa coba beberapa fungsi saja yang umumnya digunakan seperti ini,” ujar Senja
sambil mengajakku menyimak isi tampilan layar laptopnya:

 
Untuk memudahkan pemahaman, aku diberikan Senja tabel dummy berisi nilai siswa semester 1 dan 2 di suatu sekolah.
Berikut contoh penggunaan fungsi skalar dengan menggunakan tabel dummy: 
Tabel: students

2. Fungsi Skalar Matematika - CEILING()


Fungsi CEILING()
Syntax: 

SELECT CEILING(ColumnName)  
FROM TableName; 

 
Contoh: 
Tugas:
Ketiklah contoh yang diberikan pada baris di atas pada live code editor.
Output: 

 
 

KETIK :
SELECT StudentID, FirstName, LastName, CEILING(Semester1) as Semester1, CEILING(Semester2) as Semester2, MarkGrowth
FROM students;

+-----------+-----------+----------+-----------+-----------+------------+
| StudentID | FirstName | LastName | Semester1 | Semester2 | MarkGrowth |
+-----------+-----------+----------+-----------+-----------+------------+
| 1 | Jose | Mohit | 65 | 73 | -8.05 |
| 2 | Lala | Karlina | 73 | 66 | 7.5 |
| 3 | Sultan | Hadi | 46 | 51 | -4.93 |
| 4 | Jaya | Usman | 87 | 78 | 9.33 |
| 5 | Anjali | Wijaya | 93 | 91 | 1.5 |
+-----------+-----------+----------+-----------+-----------+------------+

3. Fungsi Skalar Matematika - FLOOR()


Fungsi FLOOR()
Syntax: 

SELECT FLOOR(ColumnName)  
FROM TableName; 

 
Contoh: 
Tugas:
Ketiklah contoh yang diberikan pada baris di atas pada live code editor.
Output: 

 
 Contoh dan hasil :

1.SELECT StudentID, FirstName, LastName, FLOOR(Semester1) as semester1, FLOOR(Semester2) as Semester2,


MarkGrowth
2.FROM students;

+-----------+-----------+----------+-----------+-----------+------------+
| StudentID | FirstName | LastName | semester1 | Semester2 | MarkGrowth |
+-----------+-----------+----------+-----------+-----------+------------+
| 1 | Jose | Mohit | 64 | 72 | -8.05 |
| 2 | Lala | Karlina | 72 | 65 | 7.5 |
| 3 | Sultan | Hadi | 45 | 50 | -4.93 |
| 4 | Jaya | Usman | 86 | 77 | 9.33 |
| 5 | Anjali | Wijaya | 92 | 90 | 1.5 |
+-----------+-----------+----------+-----------+-----------+------------+
4. Fungsi Skalar Matematika - ROUND()
Fungsi ROUND()
Syntax: 

SELECT ROUND(ColumnName)  
FROM TableName; 

 
Contoh: 

Tugas:
Ketiklah contoh yang diberikan pada baris di atas pada live code editor.
Output: 
 Contoh dan hasil :

1.SELECT StudentID, FirstName, LastName, ROUND(Semester1,1) as Semester1, ROUND(Semester1,0) as


Semester2, MarkGrowth
2.FROM students

+-----------+-----------+----------+-----------+-----------+------------+
| StudentID | FirstName | LastName | Semester1 | Semester2 | MarkGrowth |
+-----------+-----------+----------+-----------+-----------+------------+
| 1 | Jose | Mohit | 64.6 | 65 | -8.05 |
| 2 | Lala | Karlina | 72.8 | 73 | 7.5 |
| 3 | Sultan | Hadi | 45.3 | 45 | -4.93 |
| 4 | Jaya | Usman | 86.7 | 87 | 9.33 |
| 5 | Anjali | Wijaya | 92.2 | 92 | 1.5 |
+-----------+-----------+----------+-----------+-----------+------------+

5. Fungsi Skalar Matematika - SQRT( )


Fungsi SQRT()
Syntax: 

SELECT SQRT(ColumnName) 
FROM TableName; 

 
Contoh: 
Tugas:
Ketiklah contoh yang diberikan pada baris di atas pada live code editor.
Output: 

 
Contoh dan hasil :

1.SELECT StudentID, FirstName, LastName, SQRT(Semester1) as Semester1, Semester2, MarkGrowth


2.FROM students;

+-----------+-----------+----------+-------------------+-----------+------------+
| StudentID | FirstName | LastName | Semester1 | Semester2 | MarkGrowth |
+-----------+-----------+----------+-------------------+-----------+------------+
| 1 | Jose | Mohit | 8.034301463101817 | 72.6 | -8.05 |
| 2 | Lala | Karlina | 8.535221145348256 | 65.35 | 7.5 |
| 3 | Sultan | Hadi | 6.732013071882734 | 50.25 | -4.93 |
| 4 | Jaya | Usman | 9.31289428695505 | 77.4 | 9.33 |
| 5 | Anjali | Wijaya | 9.604686356149273 | 90.75 | 1.5 |
+-----------+-----------+----------+-------------------+-----------+------------+

Tugas Praktek
Tugas:
Gunakan fungsi MOD() untuk menghitung nilai sisa jika nilai Semester1 dibagi 2 dan fungsi EXP() untuk menghitung nilai
eksponensial dari nilai MarkGrowth. Gunakan kedua fungsi tersebut dalam satu SELECT-Statement. 
 
Jika berhasil, berikut output tabel yang diperoleh: 

 Jawaban :

1.SELECT StudentID, FirstName, LastName, MOD(Semester1,2) as Semester1, Semester2, EXP(MarkGrowth)


2.FROM students;

+-----------+-----------+----------+--------------------+-----------+------------------------+
| StudentID | FirstName | LastName | Semester1 | Semester2 | EXP(MarkGrowth) |
+-----------+-----------+----------+--------------------+-----------+------------------------+
| 1 | Jose | Mohit | 0.5499999999999972 | 72.6 | 0.00031910192248120326 |
| 2 | Lala | Karlina | 0.8499999999999943 | 65.35 | 1808.0424144560632 |
| 3 | Sultan | Hadi | 1.3200000000000003 | 50.25 | 0.0072265032813764625 |
| 4 | Jaya | Usman | 0.730000000000004 | 77.4 | 11271.131485524471 |
| 5 | Anjali | Wijaya | 0.25 | 90.75 | 4.4816890703380645 |
+-----------+-----------+----------+--------------------+-----------+------------------------+

Anda mungkin juga menyukai