Седмичните активни потребители (WAU) е полезен ключов индикатор за ефективност (KPI), който да се проследява за всеки онлайн бизнес. Това ви дава представа колко хора използват вашия продукт/услуга поне веднъж седмично. Ето как да изчислите седмично активни потребители (WAU) в MySQL.
Как да изчислим седмично активни потребители (WAU) в MySQL
Да приемем, че имате следните потребители на таблицата (user_id, last_login). последно_вход е клеймото за време на последния път, когато потребител е влязъл. Някои системи също съхраняват това времеви печат като modified_date, updated_at и т.н.
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 | +---------+---------------------+
Ето SQL заявката за изчисляване на седмично активни потребители (WAU) в MySQL за последната 1 седмица.
mysql> SELECT COUNT(DISTINCT user_id) FROM users WHERE last_login > NOW() - INTERVAL 1 WEEK; +-------------------------+ | COUNT(DISTINCT user_id) | +-------------------------+ | 16 | +-------------------------+
Бонус чети:Как да изчислим месечно активни потребители (MAU) в MySQL
Ако искате да добавите филтри (напр. status=4) към вашата заявка, можете да я добавите към клаузата WHERE, както е показано по-долу с удебелен .
SELECT COUNT(DISTINCT id) as DAU FROM users WHERE date_joined > NOW() - INTERVAL 1 DAY and status=4;
Ако искате да изчислите седмично активни потребители (WAU) за всяка седмица във вашите данни, използвайте следната SQL заявка. В този случай ние просто използваме функцията 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 | ...| +------+-----+
Можете лесно да персонализирате заявката по-горе, за да изчислите седмично активни потребители (WAU) в MySQL и да ги начертаете на линейна диаграма.
Ако искате да изчислите колко потребители се връщат на уебсайта ви всяка седмица, ето как да изчислите степента на задържане в SQL.
Ако искате да изчислите седмично активни потребители за всеки ден, тоест активни потребители за предходните 6 дни, за всеки ден, тогава можете да използвате следната заявка. Тук също така изчисляваме DAU (дневно активни потребители) заедно с WAU.
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 дни.
Вече видяхте различни начини за изчисляване на седмично активни потребители (WAU) в MySQL. Можете да ги персонализирате според вашите изисквания.
Можете също да използвате инструмент за диаграми, за да начертаете седмично активни потребители в лентата и да я споделите с вашия екип. Ето пример за стълбовидна диаграма, която показва WAU, създадена с Ubiq
Ако искате да създавате диаграми, табла за управление и отчети от MySQL база данни, можете да опитате Ubiq. Предлагаме 14-дневен безплатен пробен период.