MySQL में अद्वितीय IDs की संख्या के आधार पर स्कोर कॉलम का औसत निकालने के लिए SUM() को COUNT(DISTINCT id) से विभाजित किया जाता है। यह प्रति-उपयोगकर्ता औसत के लिए उपयोगी है जब एक उपयोगकर्ता की एकाधिक पंक्तियाँ हों।
उदाहरण के लिए टेबल बनाना
mysql> CREATE TABLE DemoTable (
Id INT,
Score INT
);
डेटा डालना (डुप्लिकेट IDs सहित)
mysql> INSERT INTO DemoTable VALUES(10, 90), (10, 190), (11, 230), (11, 130);
सभी रिकॉर्ड देखना
mysql> SELECT * FROM DemoTable;
आउटपुट
+------+-------+ | Id | Score | +------+-------+ | 10 | 90 | | 10 | 190 | | 11 | 230 | | 11 | 130 | +------+-------+
प्रति-अद्वितीय-ID औसत की गणना
कुल स्कोर = 90+190+230+130 = 640। अद्वितीय IDs = 2 (10, 11)। औसत = 640/2 = 320।
mysql> SELECT SUM(Score) / COUNT(DISTINCT Id) FROM DemoTable;
आउटपुट
+---------------------------------+ | SUM(Score) / COUNT(DISTINCT Id) | +---------------------------------+ | 320.0000 | +---------------------------------+
तुलना: सामान्य AVG(Score) सभी 4 पंक्तियों पर औसत देता है (160)। COUNT(DISTINCT Id) अद्वितीय उपयोगकर्ताओं की गिनती करता है। यह प्रति-ग्राहक औसत राजस्व आदि के लिए उपयोगी है।