سؤال

لماذا لا يساوي متوسط ​​درجات الموظف في كل شهر، عند جمعه، متوسط ​​درجات الموظفين (على الإطلاق)؟

متوسط

SELECT Avg(r.score) AS rawScore
FROM (ET INNER JOIN Employee AS e ON ET.employeeId = e.id) INNER JOIN (Employee AS a INNER JOIN Review AS r ON a.id = r.employeeId) ON ET.id = r.ETId
WHERE (((e.id)=@employeeId))

عائدات 80.737


المتوسط ​​حسب الشهر

SELECT Avg(r.score) AS rawScore, Format(submitDate, 'mmm yy') AS MonthText,  month(r.submitDate) as mm, year(submitDate) as yy
FROM (ET INNER JOIN Employee AS e ON ET.employeeId = e.id) INNER JOIN (Employee AS a INNER JOIN Review AS r ON a.id = r.employeeId) ON ET.id = r.ETId
WHERE (((e.id)=@employeeId))
GROUP BY month(r.submitDate), year(submitDate), Format(submitDate, 'mmm yy')
ORDER BY year(submitDate) DESC, month(r.submitDate) DESC

عائدات

Average Score : Month 
81.000 : Oct 09 
80.375 : Sep 09 
82.700 : Aug 09 
83.100 : Jul 09 
75.625 : Jun 09 

أعلم أن الرقم 80.737 صحيح لأنني قمت بتجميع السجلات يدويًا وقمت بالمتوسط.لكن متوسط ​​هذا الجدول (عند ثلاث منازل عشرية) هو 80.56، وهو رقم بعيد جدًا.هل تعبث المجموعة بالتقريب في كل خطوة؟

هل كانت مفيدة؟

المحلول

لن يُرجع متوسط ​​القيم المتوسطة نفس النتيجة كمتوسط ​​واحد على جميع القيم، إلا إذا كانت جميع المجموعات التي تم حساب المتوسط ​​لها نفس عدد العناصر.

إذا كان هناك أعداد مختلفة من الموظفين في RawScore كل شهر، فسوف يؤدي ذلك إلى تحريف نتائجك.

خذ بعين الاعتبار هذا المثال:إذا قمنا بحساب متوسط ​​الأرقام من 1 إلى 10 فإن المتوسط ​​هو 5.5.

عند حساب متوسط ​​الأرقام من 1 إلى 5 يكون المتوسط ​​3، ومن 6 إلى 10 يكون 8.تحتوي كلا المجموعتين على 5 عناصر، لذا فإن متوسط ​​3 و8 = 5.5.

ومع ذلك، إذا أخذت المتوسط ​​الأول على أنه 1 و2 = 1.5، والمتوسط ​​الثاني على أنه من 3 إلى 10 = 6.5، فإن المتوسط ​​1.5 و6.5 يعطي 4.وهذا منحرف لأن المجموعة الأولى تحتوي على عنصرين، والثانية تحتوي على 8 عناصر.

بالإضافة إلى ذلك ستكون التأثيرات التراكمية للتقريب التي أشار إليها روبرت هارفي.

نصائح أخرى

لا أتوقع أن تكون النتيجتان متماثلتين، لسبب بسيط وهو أنه في حالة حدوث التقريب، فإنك تقوم بالتقريب خمس مرات في الدرجات الشهرية، ومرة ​​واحدة فقط في السنة.

ومع ذلك، سأتحقق من عدد السجلات أيضًا، وأرى ما إذا كانت تخدع أم لا.من الممكن، نظرًا لتنسيق التاريخ، أن يتسلل سجل أو سجلين من خلال شقوق الاستعلامات الشهرية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top