SELECT
COUNT(DISTINCT val_1) AS val_1_count,
COUNT(DISTINCT val_2) AS val_2_count,
...
FROM ...
sẽ cung cấp cho bạn số lượng cho mỗi trường.
SELECT val_1, count(*) as val_1_count
FROM ...
GROUP BY val_1
sẽ cung cấp cho bạn số lượng cho một giá trị. Bạn có thể sử dụng UNION để lặp lại điều này cho val_1 đến val_n trong một truy vấn (kludgy).
Nếu bạn muốn số lượng trên tất cả các trường, bạn cần
SELECT val,count(*) as valcount
FROM (
SELECT val_1 AS val FROM ...
UNION ALL
SELECT val_2 AS val FROM ...
...
) AS baseview
GROUP BY val