×

Tìm giá trị nhỏ nhất với hàm LEAST() trong MySQL

Hàm LEAST() trong MySQL là một công cụ hữu ích giúp bạn tìm giá trị nhỏ nhất trong một tập hợp các giá trị. Bài viết này sẽ giải thích chi tiết cách sử dụng hàm này và cung cấp một số ví dụ minh họa để bạn có thể áp dụng vào dự án của mình một cách hiệu quả.

Cú pháp của hàm LEAST()

Cú pháp của hàm LEAST() khá đơn giản:

LEAST(value1, value2, ..., valueN)

Trong đó, value1, value2, ..., valueN là các giá trị mà bạn muốn so sánh. Hàm này sẽ trả về giá trị nhỏ nhất trong số các giá trị đó.

Các trường hợp sử dụng

So sánh các giá trị số

Giả sử bạn có một bảng chứa các kết quả thi của sinh viên và bạn muốn tìm điểm số thấp nhất.

SELECT LEAST(math_score, literature_score, english_score) AS lowest_score
FROM student_scores;

So sánh các chuỗi ký tự

Hàm LEAST() cũng có thể được sử dụng để so sánh các chuỗi ký tự theo thứ tự bảng chữ cái. Chữ cái nào đến trước thì sẽ được coi là nhỏ hơn.

SELECT LEAST('apple', 'banana', 'cherry') AS smallest_fruit;

Kết quả sẽ là apple vì 'a' đến trước 'b' và 'c' trong bảng chữ cái.

Xử lý giá trị NULL

Nếu một trong các giá trị mà bạn đang so sánh là NULL, kết quả của hàm LEAST() sẽ là NULL. Để tránh điều này, bạn có thể sử dụng hàm COALESCE() để thay thế giá trị NULL bằng một giá trị mặc định.

SELECT LEAST(COALESCE(value1, 0), COALESCE(value2, 0), COALESCE(value3, 0)) AS smallest_value
FROM some_table;

Ví dụ thực tế

Giả sử bạn có một bảng mang tên prices chứa giá các sản phẩm từ ba cửa hàng khác nhau và bạn muốn tìm giá thấp nhất.

CREATE TABLE prices (
    product_id INT PRIMARY KEY,
    store1 DECIMAL(10, 2),
    store2 DECIMAL(10, 2),
    store3 DECIMAL(10, 2)
);

INSERT INTO prices (product_id, store1, store2, store3) VALUES
(1, 10.50, 9.99, 11.00),
(2, 8.50, 8.75, 8.00),
(3, 12.00, NULL, 12.50);

SELECT product_id, LEAST(store1, store2, store3) AS lowest_price
FROM prices;

Kết quả sẽ là:

product_id lowest_price
1 9.99
2 8.00
3 NULL

Trong trường hợp này, giá trị của sản phẩm thứ ba là NULL vì một trong các giá trị là NULL.

Lời kết

Hy vọng rằng qua bài viết này, bạn đã hiểu rõ hơn về cách sử dụng hàm LEAST() trong MySQL để tìm giá trị nhỏ nhất. Từ việc so sánh các giá trị số, chuỗi ký tự cho đến xử lý giá trị NULL, hàm này cung cấp nhiều tiện ích có thể áp dụng vào nhiều tình huống khác nhau. Hãy thử áp dụng nó vào các câu truy vấn của bạn để tối ưu hóa quy trình làm việc.

Comments