Skip to Content
LearningMySQLFungsi-Fungsi Bawaan MySQL

Fungsi-Fungsi Bawaan MySQL

Fungsi bawaan MySQL adalah fitur yang sudah tersedia di dalam MySQL untuk membantu kita melakukan berbagai operasi pada data. Fungsi-fungsi ini bisa digunakan untuk menghitung, memanipulasi teks, mengolah tanggal, dan banyak lagi.

Daftar Isi

  1. Fungsi Agregat
  2. Fungsi String
  3. Fungsi Tanggal dan Waktu
  4. Fungsi Matematika
  5. Fungsi Kondisional

Fungsi Agregat

Fungsi agregat digunakan untuk melakukan perhitungan pada sekelompok data dan menghasilkan satu nilai hasil.

COUNT()

Menghitung jumlah baris dalam tabel atau jumlah nilai yang tidak NULL.

-- Menghitung total mahasiswa SELECT COUNT(*) FROM Mahasiswa; -- Menghitung mahasiswa yang memiliki IPK SELECT COUNT(IPK) FROM Mahasiswa;

SUM()

Menjumlahkan semua nilai dalam kolom tertentu.

-- Menjumlahkan total IPK semua mahasiswa SELECT SUM(IPK) FROM Mahasiswa; -- Menjumlahkan IPK mahasiswa jurusan tertentu SELECT SUM(IPK) FROM Mahasiswa WHERE Jurusan = 'Teknik Informatika';

AVG()

Menghitung rata-rata nilai dalam kolom tertentu.

-- Menghitung rata-rata IPK semua mahasiswa SELECT AVG(IPK) FROM Mahasiswa; -- Menghitung rata-rata IPK per jurusan SELECT Jurusan, AVG(IPK) FROM Mahasiswa GROUP BY Jurusan;

MIN() dan MAX()

Mencari nilai terkecil dan terbesar dalam kolom.

-- Mencari IPK terendah SELECT MIN(IPK) FROM Mahasiswa; -- Mencari IPK tertinggi SELECT MAX(IPK) FROM Mahasiswa; -- Mencari IPK tertinggi per jurusan SELECT Jurusan, MAX(IPK) FROM Mahasiswa GROUP BY Jurusan;

Fungsi String

Fungsi string digunakan untuk memanipulasi teks atau karakter.

CONCAT()

Menggabungkan beberapa string menjadi satu.

-- Menggabungkan nama dan jurusan SELECT CONCAT(Nama, ' - ', Jurusan) AS Info_Mahasiswa FROM Mahasiswa; -- Menggabungkan dengan pemisah khusus SELECT CONCAT_WS(' | ', Nama, Jurusan, IPK) AS Detail_Mahasiswa FROM Mahasiswa;

SUBSTRING()

Mengambil sebagian karakter dari string.

-- Mengambil 3 karakter pertama dari nama SELECT SUBSTRING(Nama, 1, 3) AS Inisial FROM Mahasiswa; -- Mengambil nama belakang (setelah spasi) SELECT SUBSTRING(Nama, POSITION(' ' IN Nama) + 1) AS Nama_Belakang FROM Mahasiswa;

LOWER() dan UPPER()

Mengubah teks menjadi huruf kecil atau huruf besar.

-- Mengubah nama menjadi huruf kecil SELECT LOWER(Nama) AS Nama_Kecil FROM Mahasiswa; -- Mengubah nama menjadi huruf besar SELECT UPPER(Nama) AS Nama_Besar FROM Mahasiswa;

LENGTH()

Menghitung panjang string.

-- Menghitung panjang nama SELECT Nama, LENGTH(Nama) AS Panjang_Nama FROM Mahasiswa;

Fungsi Tanggal dan Waktu

Fungsi untuk mengelola data bertipe tanggal dan waktu.

NOW() dan CURDATE()

Mendapatkan waktu saat ini.

-- Mendapatkan tanggal dan waktu saat ini SELECT NOW(); -- Mendapatkan tanggal hari ini SELECT CURDATE(); -- Mendapatkan waktu saat ini SELECT CURTIME();

DATEDIFF()

Menghitung selisih antara dua tanggal.

-- Menghitung umur dalam hari SELECT Nama, DATEDIFF(CURDATE(), Tanggal_Lahir) AS Umur_Hari FROM Mahasiswa; -- Menghitung lama kuliah dalam tahun SELECT Nama, DATEDIFF(CURDATE(), Tanggal_Masuk) / 365 AS Lama_Kuliah_Tahun FROM Mahasiswa;

DATE_FORMAT()

Memformat tampilan tanggal.

-- Memformat tanggal lahir SELECT Nama, DATE_FORMAT(Tanggal_Lahir, '%d-%m-%Y') AS Tanggal_Lahir_Format FROM Mahasiswa; -- Memformat dengan hari dan bulan dalam bahasa Indonesia SELECT Nama, DATE_FORMAT(Tanggal_Lahir, '%W, %d %M %Y') AS Tanggal_Lahir_Lengkap FROM Mahasiswa;

Fungsi Matematika

Fungsi untuk melakukan operasi matematika.

ROUND()

Membulatkan angka desimal.

-- Membulatkan IPK ke 2 angka desimal SELECT Nama, ROUND(IPK, 2) AS IPK_Bulat FROM Mahasiswa;

ABS()

Mengambil nilai absolut (positif).

-- Menghitung selisih IPK dari rata-rata SELECT Nama, ABS(IPK - (SELECT AVG(IPK) FROM Mahasiswa)) AS Selisih_IPK FROM Mahasiswa;

Fungsi Kondisional

Fungsi untuk membuat logika kondisional dalam query.

IF()

Membuat kondisi sederhana.

-- Menentukan status kelulusan berdasarkan IPK SELECT Nama, IPK, IF(IPK >= 3.5, 'Cumlaude', IF(IPK >= 3.0, 'Sangat Memuaskan', 'Memuaskan')) AS Predikat FROM Mahasiswa;

CASE

Membuat kondisi yang lebih kompleks.

-- Menentukan predikat kelulusan SELECT Nama, IPK, CASE WHEN IPK >= 3.5 THEN 'Cumlaude' WHEN IPK >= 3.0 THEN 'Sangat Memuaskan' WHEN IPK >= 2.5 THEN 'Memuaskan' ELSE 'Cukup' END AS Predikat FROM Mahasiswa;

Tips Penggunaan Fungsi

  1. Gabungkan Fungsi: Anda bisa menggabungkan beberapa fungsi dalam satu query

    SELECT UPPER(CONCAT(SUBSTRING(Nama, 1, 1), '. ', Nama_Belakang)) AS Inisial_Nama FROM Mahasiswa;
  2. Alias: Gunakan alias (AS) untuk membuat nama kolom lebih mudah dibaca

    SELECT AVG(IPK) AS Rata_Rata_IPK FROM Mahasiswa;
  3. GROUP BY: Gunakan GROUP BY untuk mengelompokkan hasil perhitungan

    SELECT Jurusan, AVG(IPK) AS Rata_Rata_IPK FROM Mahasiswa GROUP BY Jurusan;
  4. WHERE: Filter data sebelum dihitung

    SELECT AVG(IPK) AS Rata_Rata_IPK FROM Mahasiswa WHERE Jurusan = 'Teknik Informatika';
Last updated on