साप्ताहिक सक्रिय उपयोगकर्ता (WAU) प्रत्येक ऑनलाइन व्यवसाय को ट्रैक करने के लिए एक उपयोगी कुंजी प्रदर्शन संकेतक (KPI) है। यह आपको एक विचार देता है कि सप्ताह में कम से कम एक बार कितने लोग आपके उत्पाद/सेवा का उपयोग करते हैं। MySQL में साप्ताहिक सक्रिय उपयोगकर्ताओं (WAU) की गणना करने का तरीका यहां दिया गया है।
MySQL में साप्ताहिक सक्रिय उपयोगकर्ताओं (WAU) की गणना कैसे करें
मान लें कि आपके पास निम्न तालिका उपयोगकर्ता हैं (user_id, last_login)। last_login पिछली बार उपयोगकर्ता द्वारा लॉग इन किए जाने का टाइमस्टैम्प है। कुछ सिस्टम इस टाइमस्टैम्प को संशोधित_डेट, अपडेट_एट, आदि के रूप में भी संग्रहीत करते हैं।
mysql> create table users(user_id int, last_login datetime); mysql> insert into users(user_id, last_login) values(1,'2020-03-01 10:00:00'), (2,'2020-03-02 09:00:00'),(3,'2020-03-03 14:00:00'),(4,'2020-03-04 11:00:00'), (5,'2020-03-05 12:00:00'),(6,'2020-03-06 20:00:00'),(7,'2020-03-07 21:00:00'), (8,'2020-03-08 12:00:00'),(9,'2020-03-09 20:00:00'),(10,'2020-03-10 21:00:00'), (11,'2020-03-11 12:00:00'),(12,'2020-03-12 20:00:00'),(13,'2020-03-13 21:00:00'), (14,'2020-03-13 12:00:00'),(15,'2020-03-15 20:00:00'),(16,'2020-03-16 21:00:00'); mysql> select * from users; +---------+---------------------+ | user_id | last_login | +---------+---------------------+ | 1 | 2020-03-01 10:00:00 | | 2 | 2020-03-02 09:00:00 | | 3 | 2020-03-03 14:00:00 | | 4 | 2020-03-04 11:00:00 | | 5 | 2020-03-05 12:00:00 | | 6 | 2020-03-06 20:00:00 | | 7 | 2020-03-07 21:00:00 | | 8 | 2020-03-08 12:00:00 | | 9 | 2020-03-09 20:00:00 | | 10 | 2020-03-10 21:00:00 | | 11 | 2020-03-11 12:00:00 | | 12 | 2020-03-12 20:00:00 | | 13 | 2020-03-13 21:00:00 | | 14 | 2020-03-13 12:00:00 | | 15 | 2020-03-15 20:00:00 | | 16 | 2020-03-16 21:00:00 | +---------+---------------------+
पिछले 1 सप्ताह के लिए MySQL में साप्ताहिक सक्रिय उपयोगकर्ताओं (WAU) की गणना करने के लिए SQL क्वेरी यहां दी गई है।
mysql> SELECT COUNT(DISTINCT user_id) FROM users WHERE last_login > NOW() - INTERVAL 1 WEEK; +-------------------------+ | COUNT(DISTINCT user_id) | +-------------------------+ | 16 | +-------------------------+
बोनस पढ़ें:MySQL में मासिक सक्रिय उपयोगकर्ताओं (MAU) की गणना कैसे करें
यदि आप अपनी क्वेरी में फ़िल्टर (जैसे स्थिति =4) जोड़ना चाहते हैं, तो आप इसे WHERE क्लॉज में जोड़ सकते हैं, जैसा कि नीचे बोल्ड में दिखाया गया है ।
SELECT COUNT(DISTINCT id) as DAU FROM users WHERE date_joined > NOW() - INTERVAL 1 DAY and status=4;
यदि आप अपने डेटा में प्रत्येक सप्ताह के लिए साप्ताहिक सक्रिय उपयोगकर्ता (WAU) की गणना करना चाहते हैं, तो निम्न SQL क्वेरी का उपयोग करें। इस मामले में, हम उपयोगकर्ताओं को उनके last_login के आधार पर एकत्रित करने के लिए केवल WEEK फ़ंक्शन का उपयोग करते हैं मान।
mysql> SELECT WEEK(last_login) AS WEEK, COUNT(user_id) AS WAU FROM users GROUP BY WEEK(last_login); +------+-----+ | WEEK | WAU | +------+-----+ | 9 | 7 | | 10 | 7 | | 11 | 2 | | 12 | ...| +------+-----+
आप MySQL में साप्ताहिक सक्रिय उपयोगकर्ताओं (WAU) की गणना करने के लिए उपरोक्त क्वेरी को आसानी से अनुकूलित कर सकते हैं, और उन्हें एक लाइन चार्ट पर प्लॉट कर सकते हैं।
अगर आप यह गणना करना चाहते हैं कि आपकी वेबसाइट पर हर हफ्ते कितने उपयोगकर्ता लौटते हैं, तो यहां SQL में अवधारण दर की गणना करने का तरीका बताया गया है।
यदि आप प्रत्येक दिन के लिए साप्ताहिक सक्रिय उपयोगकर्ताओं की गणना करना चाहते हैं, अर्थात पिछले 6 दिनों के लिए सक्रिय उपयोगकर्ता, प्रत्येक दिन के लिए, तो आप निम्न क्वेरी का उपयोग कर सकते हैं। यहां हम WAU के साथ DAU (दैनिक सक्रिय उपयोगकर्ता) की गणना भी करते हैं।
mysql> SELECT d.day , COUNT(DISTINCT u.user_id) AS wau , COUNT(DISTINCT IF(u.day=d.day,u.user_id,NULL)) AS dau FROM ( SELECT DATE(k.last_login) AS `day` FROM users k GROUP BY `day` ) d JOIN ( SELECT DATE(l.last_login) AS `day` , l.user_id FROM users l GROUP BY `day`, l.user_id ) u ON u.day <= d.day AND u.day > DATE_ADD(d.day, INTERVAL -7 DAY) GROUP BY d.day ORDER BY d.day; +------------+-----+-----+ | day | wau | dau | +------------+-----+-----+ | 2020-03-01 | 1 | 1 | | 2020-03-02 | 2 | 1 | | 2020-03-03 | 3 | 1 | | 2020-03-04 | 4 | 1 | | 2020-03-05 | 5 | 1 | | 2020-03-06 | 6 | 1 | | 2020-03-07 | 7 | 1 | | 2020-03-08 | 7 | 1 | | 2020-03-09 | 7 | 1 | | 2020-03-10 | 7 | 1 | | 2020-03-11 | 7 | 1 | | 2020-03-12 | 7 | 1 | | 2020-03-13 | 8 | 2 | | 2020-03-15 | 7 | 1 | | 2020-03-16 | 7 | 1 | +------------+-----+-----+
उपरोक्त क्वेरी में, प्रत्येक दिन के लिए, हम उन अलग-अलग उपयोगकर्ताओं की संख्या की गणना करते हैं, जिन्होंने उस दिन और पिछले 6 दिनों में लॉग इन किया था।
अब आपने MySQL में साप्ताहिक सक्रिय उपयोगकर्ताओं (WAU) की गणना करने के विभिन्न तरीके देखे हैं। आप उन्हें अपनी आवश्यकता के अनुसार अनुकूलित कर सकते हैं।
आप साप्ताहिक सक्रिय उपयोगकर्ताओं को बार चार्ट में प्लॉट करने और इसे अपनी टीम के साथ साझा करने के लिए चार्टिंग टूल का भी उपयोग कर सकते हैं। यहां बार चार्ट का एक उदाहरण दिया गया है जो Ubiq का उपयोग करके बनाए गए WAU को दिखाता है
पी>
यदि आप MySQL डेटाबेस से चार्ट, डैशबोर्ड और रिपोर्ट बनाना चाहते हैं, तो आप Ubiq को आज़मा सकते हैं। हम 14-दिन का निःशुल्क परीक्षण प्रदान करते हैं।