Post

SQL Cơ bản - Functions

Làm việc với SQL, chắc chắn bạn sẽ phải đụng chạm đến cái gì đó gọi là Functions. Đúng rồi, mấy cái function này nhìn có vẻ “xoàng xĩnh” nhưng thực ra là những “vũ khí bí mật” giúp bạn khai thác triệt để sức mạnh của cơ sở dữ liệu. Đặc biệt, nếu bạn muốn làm quen với những con số, dữ liệu khủng từ một hệ thống lớn thì đừng bỏ qua COUNT, SUM, MIN, MAX và AVG nhé.

Trong bài viết này, chúng ta sẽ cùng nhau “mổ xẻ” mấy anh chàng này theo một cách dễ hiểu, thậm chí là vui vẻ. Bắt đầu thôi nào!

1. COUNT: Đếm có gì khó?

Hãy tưởng tượng bạn là chủ một quán cà phê. Mỗi ngày bạn đếm xem có bao nhiêu khách hàng ghé qua, kiểu như là: “Hôm nay có bao nhiêu khách ghé quán nhỉ?”

Với SQL, bạn có thể làm điều tương tự, chỉ khác là bạn đếm số lượng hàng trong bảng.

Cú pháp:

1
2
SELECT COUNT(column_name) 
FROM table_name;

Nếu bạn chỉ muốn đếm số bản ghi trong bảng, bạn có thể dùng COUNT(*) cho nhanh.

Giả sử bạn có bảng customers và muốn biết tổng số khách hàng đã đăng ký.

1
2
SELECT COUNT(*) AS total_customers 
FROM customers;

Kết quả sẽ trả về tổng số khách hàng, và nó sẽ giống như việc bạn đếm từng người một mà không cần cầm bút giấy.

2. SUM: Đếm xong thì phải tính tổng chứ nhỉ :)))

SUM được thiết kế để tính tổng, và đúng như tên gọi, nó sẽ cộng tất cả các giá trị trong một cột lại với nhau.

Ví dụ, bạn là kế toán của quán cà phê và muốn biết tổng doanh thu ngày hôm qua. SQL sẽ giúp bạn làm điều này trong một cái nháy mắt!

Cú pháp:

1
2
SELECT SUM(column_name) 
FROM table_name;

Giả sử bảng orders của bạn có cột amount (số tiền mà khách hàng thanh toán). Bạn muốn tính tổng doanh thu:

1
2
SELECT SUM(amount) AS total_revenue 
FROM orders;

Kết quả: Tổng doanh thu của bạn, không cần phải bấm máy tính hay dùng Excel gì cả.

3. MIN

MIN không chỉ để nói về người có chiều cao khiêm tốn nhất trong lớp, mà còn là công cụ tuyệt vời để tìm ra giá trị nhỏ nhất trong bảng dữ liệu của bạn. Bạn muốn biết khách hàng nhỏ tuổi nhất của quán? Dễ thôi!

Cú pháp:

1
2
SELECT MIN(column_name) 
FROM table_name;

Giả sử bảng customers của bạn có cột age, và bạn muốn tìm ra ai là khách hàng trẻ nhất.

1
2
SELECT MIN(age) AS youngest_customer 
FROM customers;

SQL sẽ cho bạn biết ngay kết quả, và bạn có thể “tranh thủ” gửi một chiếc bánh sinh nhật kèm theo voucher cho khách hàng này!

4. MAX

Ngược lại với MIN, MAX giúp bạn tìm ra giá trị lớn nhất. Nếu MIN giúp bạn tìm khách hàng nhỏ tuổi nhất, thì MAX sẽ giúp bạn tìm khách hàng lớn tuổi nhất, hay thậm chí là đơn hàng lớn nhất, doanh thu cao nhất!

Cú pháp:

1
2
SELECT MAX(column_name) 
FROM table_name;

Bạn muốn biết khách hàng cao tuổi nhất trong bảng customers?

1
2
SELECT MAX(age) AS oldest_customer 
FROM customers;

Tadaaa! Và bạn đã có kết quả.

5. AVG

Cuối cùng nhưng không kém phần quan trọng, AVG sẽ tính giá trị trung bình cho bạn. Bạn muốn biết độ tuổi trung bình của khách hàng? SQL sẽ làm điều đó giúp bạn.

Cú pháp:

1
2
SELECT AVG(column_name) 
FROM table_name;

Bạn muốn biết độ tuổi trung bình của khách hàng quán cà phê?

1
2
SELECT AVG(age) AS average_age 
FROM customers;

SQL sẽ trả về độ tuổi trung bình, và từ đó bạn có thể điều chỉnh menu quán phù hợp hơn với khách hàng mục tiêu!

Kết hợp

Có lẽ bạn đang thắc mắc: “Mình có thể dùng mấy cái function này cùng một lúc không?” Câu trả lời là: “CÓ, tất nhiên rồi!”

Hãy tưởng tượng bạn là chủ quán cà phê và bạn muốn biết:

  • Tổng số khách hàng
  • Độ tuổi trẻ nhất
  • Độ tuổi già nhất
  • Độ tuổi trung bình

Bạn có thể làm điều này chỉ với một truy vấn!

1
2
3
4
5
6
SELECT 
    COUNT(*) AS total_customers,
    MIN(age) AS youngest_customer,
    MAX(age) AS oldest_customer,
    AVG(age) AS average_age
FROM customers;

Kết quả sẽ trả về đầy đủ thông tin mà bạn muốn, chỉ trong một cú nhấn chuột.

Kết luận

Vậy là bạn đã nắm được toàn bộ những chức năng cơ bản của SQL Functions, từ việc đếm số lượng bản ghi với COUNT, tính tổng với SUM, đến việc tìm giá trị nhỏ nhất với MIN, lớn nhất với MAX, và tính trung bình với AVG. Những hàm này sẽ giúp bạn phân tích dữ liệu một cách nhanh chóng và chính xác, mà không cần phải “xoắn não”.

Nếu bạn cảm thấy đã sẵn sàng để “tung hoành” với SQL, hãy mở ngay bảng dữ liệu của mình và thử nghiệm. Nếu mọi thứ chạy mượt mà, chúc mừng, bạn đã nắm phần kiến thức này rồi đấy!

Bài viết mang tính chất “ghi chú, lưu trữ, chia sẻ và phi lợi nhuận”.
Nếu bạn thấy hữu ích, đừng quên chia sẻ với bạn bè và đồng nghiệp của mình nhé!

Happy coding! 😎 👍🏻 🚀 🔥

This post is licensed under CC BY 4.0 by the author.