Hàm QUERY
trong Google Sheets là một trong những công cụ mạnh mẽ nhất, cho phép người dùng phân tích dữ liệu một cách linh hoạt tương tự như SQL (Structured Query Language). Hàm này không chỉ lọc dữ liệu mà còn hỗ trợ sắp xếp, tính toán và nhóm dữ liệu.
Cú pháp hàm QUERY
=QUERY(data, query, [headers])
Thông tin các đối số:
data
: Phạm vi dữ liệu bạn muốn phân tích, ví dụ:A1:D234
.query
: Câu truy vấn, được đặt trong dấu ngoặc kép, ví dụ:"SELECT A, B WHERE C > 50"
.headers
(tùy chọn): Số hàng tiêu đề trong dữ liệu của bạn. Nếu bỏ qua, Google Sheets sẽ tự động xác định.
Ví dụ:
=QUERY(A1:D234, "SELECT B, D", 1)
- Phạm vi dữ liệu:
A1:D234
- Câu truy vấn: Chọn các cột B và D
- Tiêu đề:
1
, chỉ rõ rằng hàng đầu là tiêu đề.
Hướng dẫn cơ bản với hàm QUERY
CHỌN tất cả các cột
Câu lệnh SELECT *
dùng để chọn tất cả các cột trong bảng dữ liệu.
Ví dụ:
=QUERY(countries, "SELECT *", 1)
Phạm vi countries
đã được đặt tên.
CHỌN các cột cụ thể
Chọn các cột cụ thể bằng câu truy vấn:
=QUERY(countries, "SELECT B, D", 1)
Kết quả chỉ hiển thị các cột B và D.
Từ khóa quan trọng
WHERE
Từ khóa WHERE
dùng để lọc dữ liệu theo điều kiện.
Ví dụ 1: Chọn quốc gia có dân số lớn hơn 100 triệu:
=QUERY(countries, "SELECT B, D WHERE D > 100000000", 1)
Ví dụ 2: Chọn các quốc gia ở Châu Âu:
=QUERY(countries, "SELECT B, C, D WHERE C = 'Europe'", 1)
Lưu ý: Chuỗi ký tự cần đặt trong dấu nháy đơn (
'
).
ORDER BY
Dùng để sắp xếp dữ liệu theo thứ tự tăng dần hoặc giảm dần.
Ví dụ: Sắp xếp dữ liệu theo dân số tăng dần:
=QUERY(countries, "SELECT B, C, D ORDER BY D ASC", 1)
Sắp xếp quốc gia theo thứ tự giảm dần:
=QUERY(countries, "SELECT B, C, D ORDER BY B DESC", 1)
LIMIT
Giới hạn số kết quả trả về.
Ví dụ: Chỉ trả về 10 kết quả:
=QUERY(countries, "SELECT B, C, D ORDER BY D ASC LIMIT 10", 1)
Kỹ thuật nâng cao với hàm QUERY
Các phép toán số học
Tính phần trăm dân số so với tổng thế giới:
=QUERY(countries, "SELECT B, C, (D / 7162119434) * 100", 1)
Dùng từ khóa LABEL
để đặt tên cột:
=QUERY(countries, "SELECT B, C, (D / 7162119434) * 100 LABEL (D / 7162119434) * 100 'Percentage'", 1)
Hàm tổng hợp
Tính giá trị lớn nhất, nhỏ nhất, trung bình:
=QUERY(countries, "SELECT max(D), min(D), avg(D)", 1)
GROUP BY
Nhóm dữ liệu theo nhóm tự định nghĩa.
Ví dụ: Nhóm theo lục địa và đếm số quốc gia:
=QUERY(countries, "SELECT C, count(B) GROUP BY C", 1)
Tóm tắt dữ liệu, sắp xếp và giới hạn kết quả:
=QUERY(countries,
"SELECT C, count(B), min(D), max(D), avg(D)
GROUP BY C
ORDER BY avg(D) DESC
LIMIT 3", 1)