Tìm trung bình của 3 bản ghi đầu tiên trong MySQL
Để thực hiện việc này, chúng ta có thể sử dụng truy vấn con (subquery). Hãy cùng tạo một bảng và chèn dữ liệu mẫu.
1. Tạo bảng và chèn dữ liệu
mysql> CREATE TABLE DemoTable (
Score INT
);
Chèn 5 bản ghi vào bảng:
mysql> INSERT INTO DemoTable VALUES (80); mysql> INSERT INTO DemoTable VALUES (45); mysql> INSERT INTO DemoTable VALUES (55); mysql> INSERT INTO DemoTable VALUES (78); mysql> INSERT INTO DemoTable VALUES (88);
2. Xem tất cả bản ghi
mysql> SELECT * FROM DemoTable;
Kết quả:
+-------+ | Score | +-------+ | 80 | | 45 | | 55 | | 78 | | 88 | +-------+
3. Truy vấn tính trung bình 3 giá trị đầu tiên
Sử dụng LIMIT 3 trong truy vấn con để giới hạn 3 bản ghi đầu tiên:
mysql> SELECT AVG(Score) FROM (
SELECT Score FROM DemoTable LIMIT 3
) AS tbl;
4. Kết quả
+------------+ | AVG(Score) | +------------+ | 60.0000 | +------------+
Giải thích: Truy vấn con SELECT Score FROM DemoTable LIMIT 3 lấy 3 bản ghi đầu tiên (80, 45, 55), sau đó truy vấn chính tính trung bình: (80 + 45 + 55) / 3 = 60.