SQL MIN() dan MAX() adalah fungsi dalam SQL yang masing-masing mengembalikan nilai terkecil dan terbesar dari suatu kolom. Oleh karena itu, fungsi min() dan max() sql hanya berlaku untuk tipe data numerik.
Konsep sederhana untuk memahami fungsi sql min() dan max() bisa diilustrasikan seperti berikut.
Ambilkan saya data dengan nilai terkecil/terbesar dari kolom berikut.
Jika dituangkan dalam bentuk sintaks sql, maka akan seperti berikut.
Sintaks SQL MIN() dan MAX()
SELECT
MIN(kolom1), ...
FROM
tabel1;
SELECT
MAX(kolom1), ...
FROM
tabel1;
Untuk menguatkan pemahaman, mari kita coba studi kasus pada tabel product
berikut.
ID | ProductName | Total |
---|---|---|
1 | Buku | 10 |
2 | Pensil | 23 |
3 | Tas | 17 |
4 | Penghapus | 5 |
5 | Bolpoin | 9 |
6 | Penggaris | 14 |
Dalam kasus ini, kita akan mencoba melakukan query sql dengan ketentuan berikut:
- Product apa yang memiliki jumlah paling sedikit?
- Product apa yang memiliki jumlah paling banyak?
Pada pertanyaan pertama, kita perlu mencari nilai total yang paling kecil, sehingga bisa kita gunakan funsgi sql min().
SELECT
ID, ProductName, MIN(Total)
FROM
product;
Output:
ID | ProductName | MIN(Total) |
---|---|---|
4 | Penghapus | 5 |
Maka dapat kita ketahui bahwa product yang memiliki jumlah paling sedikit yaitu Penghapus
dengan total 5.
Selanjutnya, untuk menjawab pertanyaan kedua, kita hendak mencari product yang nilai totalnya paling banyak. Kita bisa menggunakan fungsi max() dalam query sql nya.
SELECT
ID, ProductName, MAX(Total)
FROM
product;
Output:
ID | ProductName | MAX(Total) |
---|---|---|
2 | Pensil | 23 |
Berdasarkan output query, tampak bahwa product yang memiliki jumlah paling banyak adalah Pensil
dengan total 23.
Set Nama Kolom sebagai Alias
Jika diperhatikan dengan jeli, dari setiap query select di atas, nama kolom hasil fungsi min() dan max() secara default masing-masing adalah MIN(Total) dan MAX(Total).
Dalam beberapa kasus, output nama kolom seperti itu terkadang menjadi tidak readable. Oleh karena itu, kebanyakan programmer akan mengubahnya dengan set nama kolom alias.
Masih ingat di materi sebelumnya mengenai cara menggunakan sql alias?
Misalkan, kita akan melakukan set nama kolom alias untuk kasus pertanyaan nomor 2. Maka berikut ini query sql nya.
SELECT
ID, ProductName, MAX(Total) AS
Total
FROM
product;
Output:
ID | ProductName | Total |
---|---|---|
2 | Pensil | 23 |
Tampak pada nama kolom hasil query fungsi max() nya kini menjadi lebih readable bukan?