cách tối ưu hóa là trước tiên tính toán số lượng và sau đó chỉ cần đặt biến vào câu lệnh lựa chọn của bạn:
set @rowCount = (select count(col1) from table1);
select col1, count(col1), @rowCount from table1 group by col1;
Phương pháp do @Meherzad đưa ra sẽ tính số hàng nhiều lần. Nhưng nếu bạn muốn thực hiện việc này trong một truy vấn duy nhất, bạn có thể sử dụng:
select col1, count(col1), (select count(col1) from table1) rowCount
from table1 group by col1;