Di MariaDB, MAX()
adalah fungsi agregat yang mengembalikan nilai maksimum dalam ekspresi yang diberikan.
Sintaks
Sintaksnya seperti ini:
MAX([DISTINCT] expr)
Contoh Data
Misalkan kita memiliki tabel dengan data berikut:
SELECT
VendorId,
ProductName,
ProductPrice
FROM Products;
Hasil:
+----------+---------------------------------+--------------+ | VendorId | ProductName | ProductPrice | +----------+---------------------------------+--------------+ | 1001 | Left handed screwdriver | 25.99 | | 1001 | Right handed screwdriver | 25.99 | | 1001 | Long Weight (blue) | 14.75 | | 1001 | Long Weight (green) | 11.99 | | 1002 | Sledge Hammer | 33.49 | | 1003 | Chainsaw | 245.00 | | 1003 | Straw Dog Box | 55.99 | | 1004 | Bottomless Coffee Mugs (4 Pack) | 9.99 | +----------+---------------------------------+--------------+
Contoh
Kita dapat menggunakan query berikut untuk mendapatkan harga maksimum dari tabel tersebut.
SELECT MAX(ProductPrice)
FROM Products;
Hasil:
245.00
Dalam hal ini, informasi harga disimpan di ProductPrice
kolom, jadi kami meneruskannya sebagai argumen ke MAX()
fungsi, yang kemudian menghitung dan mengembalikan hasilnya.
Hasil yang Difilter
MAX()
fungsi beroperasi pada baris yang dikembalikan oleh kueri. Jadi jika Anda memfilter hasilnya, hasil dari MAX()
akan mencerminkan hal itu.
SELECT MAX(ProductPrice)
FROM Products
WHERE VendorId = 1001;
Hasil:
25.99
Dalam hal ini, 25,99 adalah harga maksimum dari semua produk yang ditawarkan oleh vendor yang ditentukan.
Data Tanggal/Waktu
Anda dapat menggunakan MAX()
pada nilai tanggal/waktu.
Misalkan kita memiliki tabel berikut:
SELECT PetName, DOB
FROM Pets;
Hasil:
+---------+------------+ | PetName | DOB | +---------+------------+ | Fluffy | 2020-11-20 | | Fetch | 2019-08-16 | | Scratch | 2018-10-01 | | Wag | 2020-03-15 | | Tweet | 2020-11-28 | | Fluffy | 2020-09-17 | | Bark | NULL | | Meow | NULL | +---------+------------+
Kita bisa menggunakan MAX()
untuk menemukan tanggal lahir maksimum (DOB
).
SELECT MAX(DOB)
FROM Pets;
Hasil:
2020-11-28
Ini akan menjadi tanggal lahir hewan peliharaan termuda.
NULL
Nilai
MAX()
fungsi mengabaikan NULL
nilai-nilai. Dalam tabel contoh kami di atas, dua baris terakhir memiliki NULL
nilai dalam DOB
kolom, tapi itu diabaikan di MAX()
. kami contoh.
Data Karakter
Saat digunakan dengan kolom data karakter, MAX()
menemukan nilai tertinggi dalam urutan penyusunan.
Contoh:
SELECT MAX(ProductName)
FROM Products;
Hasil:
Straw Dog Box
Yang DISTINCT
Kata kunci
DISTINCT
kata kunci dapat digunakan dengan MAX()
fungsi, namun, ini menghasilkan hasil yang sama dengan menghilangkan DISTINCT
. Mengizinkan DISTINCT
fungsi memungkinkan MariaDB untuk mematuhi standar ISO SQL.
Oleh karena itu, kita dapat melakukan ini:
SELECT MAX(DISTINCT ProductPrice)
FROM Products;
Hasil:
245.00
Tapi itu tidak berdampak pada hasil.
DISTINCT
kata kunci bisa sangat berguna bila digunakan dengan konteks lain (mis. dengan COUNT()
function), tetapi tidak ada artinya jika digunakan dengan MAX()
. DISTINCT
kata kunci menghapus duplikat, tetapi dalam kasus MAX()
tidak akan ada bedanya karena MAX()
mengembalikan hasil yang sama terlepas dari berapa banyak baris yang berbagi nilai maksimum yang sama.
Fungsi Jendela
MAX()
fungsi dapat digunakan bersama dengan OVER
klausa untuk membuat fungsi jendela.
Lihat SQL MAX()
Untuk Pemula misalnya.