Tôi đang sử dụng PostgreSQL và tôi không thể tìm ra truy vấn để thực hiện COUNT và SUM gồm hai cột khác nhau. Về cơ bản tôi đang tìm kiếm một cái gì đó như mộtSUM(hits DISTINCT record_id)
Cái bàn:
status record_id hits
0 123 1
0 123 1
0 124 1
0 125 1
0 126 0
1 123 0
1 124 0
1 125 1
1 125 1
Kết quả mong muốn:
status unique_records_count hits_sum
0 4 3
1 3 1
Làm một
SELECT status, COUNT(DISTINCT record_id), SUM(hits)
FROM table
GROUP BY status
trả lại
status unique_records_count hits_sum
0 4 4
1 3 2
2
Các lần truy cập phụ thuộc vào trạng thái và record_id hoặc có thể có hai bản ghi có cùng trạng thái và record_id nhưng lần truy cập khác nhau không? truy vấn của bạn trả về tất cả hệ thống cơ sở dữ liệu cùng một kết quả sqlfiddle.com/#!1/fb8b8/1
—
miracle173