Tôi hiện đang làm việc theo một nhiệm vụ yêu cầu tôi tìm mức trung bình về số lượng tài nguyên cho mỗi mô-đun. Bảng hiện tại trông giống như sau:Trung bình trên một số() trong cùng một truy vấn
ResourceID ModulID
1 1
2 7
3 2
4 4
5 1
6 1
Về cơ bản, tôi đang cố gắng tìm ra cách để có được số lượng tài nguyên trung bình. Chỉ có dữ liệu thử nghiệm có liên quan ở đây là dành cho mô-đun 1, trong đó có 3 tài nguyên khác nhau được kết nối với nó. Nhưng tôi cần hiển thị tất cả các kết quả.
Đây là mã của tôi:
select avg(a.ress) GjSnitt, modulID
from
(select count(ressursID) as ress
from ressursertiloppgave
group by modulID) as a, ressursertiloppgave r
group by modulID;
Rõ ràng nó không phải đang làm việc, nhưng tôi hiện đang ở mất mát về những gì thay đổi vào thời điểm này. Tôi thực sự sẽ đánh giá cao bất kỳ đầu vào bạn guys có.
Bạn có thể không chỉ cần sử dụng truy vấn bên ngoài của bạn ('AVG () 'được nhóm lại bởi ModulId) mà không có truy vấn bên trong? Tôi nghĩ rằng sẽ tạo ra kết quả mong đợi. –
Vấn đề với AVG() là nó lấy giá trị đặt lại với nhau và lấy giá trị trung bình trên một giá trị duy nhất. Ví dụ, Tài nguyên 1,5 và 6 tạo ra 12. Sau đó, nó sử dụng để lấy tổng trung bình. Tôi cần nó là 1,5, vì có 3 resourceID được kết nối với ModulID 1. – Coss