Hàm MIN() trong MySQL
Trần Thị Vân
- 1198
- 15/08/2025
Chức năng của Hàm MIN() trong MySQL
Hàm MIN() trong MySQL được sử dụng để lấy ra giá trị thấp nhất trong một cột, hàm MIN() sẽ kết với với từ khóa AS để tạo bí danh cho một giá trị, giúp cho việc lấy dữ liệu tiện lợi hơn, hàm MIN() thường được dùng kết hợp với mệnh đề GROUP BY để lấy giá trị thấp nhất trong từng nhóm.
Code Hàm MIN() trong MySQL
select id_cha1,MIN(gia) as giathapnhat from tb_sanpham;
<?php
$dbhost = 'localhost';
$dbuser = 'webmoi_userdata'; // Tên username
$dbpass = 'xgZwEfQWE'; // Mật khẩu
// Kết nối đến tên username
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn ){
die('Không kết nối được: ' . mysql_error());
}
// Chọn tên database
mysql_select_db('webmoi_tendata');
// Xét kiểu tiếng việt
mysql_query('SET NAMES "utf8"');
// MIN(gia)
echo "<b>MIN(gia)</b><br>";
$sql ="select id_cha1,MIN(gia) as giathapnhat from tb_sanpham";
$ketquamot = mysql_query($sql,$conn);
if(!$ketquamot){
die('Không thể lấy dữ liệu: ' . mysql_error());
}
// Dùng vòng lặp để lấy ra từng hàng trong bảng
while($row = mysql_fetch_array($ketquamot, MYSQL_ASSOC)){
echo "ID Cha cấp một: {$row['id_cha1']} <br> ".
"Giá thấp nhất: ".number_format($row['giathapnhat'],0,"",".")." <br> ".
"--------------------------------<br>";
}
// MIN(gia) trong GROUP BY id_cha1
echo "<b>MIN(gia) trong GROUP BY id_cha1</b><br>";
$sql ="select id_cha1,MIN(gia) as giathapnhat from tb_sanpham where hienthi=1 GROUP BY id_cha1";
$ketquahai = mysql_query($sql,$conn);
if(!$ketquahai){
die('Không thể lấy dữ liệu: ' . mysql_error());
}
// Dùng vòng lặp để lấy ra từng hàng trong bảng
while($row = mysql_fetch_array($ketquahai, MYSQL_ASSOC)){
echo "ID Cha cấp một: {$row['id_cha1']} <br> ".
"Giá thấp nhất: ".number_format($row['giathapnhat'],0,"",".")." <br> ".
"--------------------------------<br>";
}
// Đóng kết nối database
mysql_close($conn);
?>
Kết quả:
MIN(gia)
ID Cha cấp một: 1
Giá thấp nhất: 2.700.000
--------------------------------
MIN(gia) trong GROUP BY id_cha1
ID Cha cấp một: 1
Giá thấp nhất: 25.000.000
--------------------------------
ID Cha cấp một: 2
Giá thấp nhất: 2.700.000
--------------------------------
Cách sử dụng Hàm MIN() trong MySQL hiệu quả
Tìm giá trị nhỏ nhất theo điều kiện với MIN()
Khi chỉ muốn tìm giá trị nhỏ nhất trong một phần dữ liệu cụ thể, có thể kết hợp MIN() với WHERE. Cách này giúp truy vấn chỉ xét những bản ghi đáp ứng điều kiện thay vì toàn bộ bảng.
SELECT MIN(price)
FROM products
WHERE category_id = 2;
Ví dụ trên trả về mức giá thấp nhất của các sản phẩm thuộc danh mục có mã là 2. Đây là cách thường dùng khi cần tìm giá thấp nhất, thời gian sớm nhất hoặc một giá trị nhỏ nhất trong phạm vi đã lọc.
Tìm giá trị nhỏ nhất trong từng nhóm dữ liệu
Khi cần so sánh giá trị nhỏ nhất giữa nhiều nhóm, MIN() có thể kết hợp với GROUP BY. Mỗi nhóm sẽ được tính riêng, giúp kết quả dễ phân tích hơn.
SELECT category_id, MIN(price) AS min_price
FROM products
GROUP BY category_id;
Trong trường hợp này, MySQL trả về giá trị nhỏ nhất của cột price cho từng category_id. Cách xử lý này phù hợp với các bài toán như tìm sản phẩm rẻ nhất theo danh mục hoặc thời điểm sớm nhất theo từng nhóm dữ liệu.
Kết hợp MIN() với các mệnh đề SQL khác
MIN() có thể được sử dụng cùng nhiều mệnh đề SQL để tạo truy vấn linh hoạt hơn. Chẳng hạn, kết hợp WHERE để lọc dữ liệu trước khi tính, GROUP BY để chia nhóm hoặc HAVING để lọc các nhóm sau khi đã thực hiện phép tổng hợp.
SELECT category_id, MIN(price) AS min_price
FROM products
GROUP BY category_id
HAVING MIN(price) < 100000;
Truy vấn trên chỉ giữ lại những nhóm có mức giá nhỏ nhất dưới 100000. Khi xây dựng truy vấn thực tế, nên xác định rõ dữ liệu cần lọc ở bước nào để đặt điều kiện vào WHERE hoặc HAVING cho phù hợp.
Lời kết
Cảm ơn các bạn đã tham khảo bài viết Hàm MIN() trong MySQL.
Tải file database .sql về nếu muốn kiểm tra hoặc thực hành Tải về.
- 0 Bình luận
Email, Điện thoại của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *