Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cách tính số người dùng hoạt động hàng ngày (DAU) trong MySQL

Người dùng hoạt động hàng ngày (DAU) là một KPI hữu ích cho mọi doanh nghiệp. Nó giúp bạn hiểu có bao nhiêu người đang thực sự sử dụng sản phẩm / dịch vụ của bạn hàng ngày. Dưới đây là cách tính số người dùng hoạt động hàng ngày (DAU) trong MySQL.

Cách tính số người dùng hoạt động hàng ngày (DAU) trong MySQL

Bạn chủ yếu cần 2 cột cho mục đích này - id người dùng và dấu thời gian (khi tài khoản người dùng được tạo). Giả sử bạn đã lưu trữ thông tin người dùng trong những người dùng bảng sau (id, date_joined)

mysql> create table users (
id int(11) NOT NULL auto_increment,
date_joined timestamp,
PRIMARY KEY (id)
);


mysql> insert into users values
(1, '2019-12-01 2:00:00'),
(2,'2019-12-01 2:30:00'),
(3,'2019-12-02 10:00:00'),
...;

mysql> select * from users;
+----+---------------------+
| id | date_joined         |
+----+---------------------+
|  1 | 2019-12-01 02:00:00 |
|  2 | 2019-12-01 02:30:00 |
|  3 | 2019-12-01 10:00:00 |
|  4 | ...                 |
+----+---------------------+


Đây là một truy vấn SQL đơn giản để tính số người dùng hoạt động hàng ngày (DAU) trong MySQL cho ngày trước đó

SELECT COUNT(DISTINCT id)
    FROM users
    WHERE date_joined > NOW() - INTERVAL 1 DAY;
+--------------------+
|         DAU        |
+--------------------+
|        120         |
+--------------------+

Bạn có thể vẽ DAU ở trên dưới dạng một biểu đồ số duy nhất trên trang tổng quan của mình.

Ngoài ra, hãy xem Cách tính số người dùng hoạt động hàng tuần (WAU) trong MySQL.

Nếu bạn muốn thêm một số loại bộ lọc (ví dụ:trạng thái =4) để chỉ đếm những người dùng cụ thể, thì bạn có thể thêm điều kiện vào mệnh đề WHERE trong truy vấn SQL ở trên

SELECT COUNT(DISTINCT id) as DAU
    FROM users
    WHERE date_joined > NOW() - INTERVAL 1 DAY and status=4;
+--------------------+
|        DAU         |
+--------------------+
|        31          |
+--------------------+

Nếu bạn muốn tính DAU hàng ngày, tức là người dùng hoạt động hàng ngày mỗi ngày, thì đây là truy vấn SQL để tính toán người dùng hoạt động hàng ngày (DAU) trong MySQL.

SELECT DATE(date_joined) AS DAY,
       COUNT(id) AS DAU
    FROM users
    GROUP BY DATE(date_joined);

+------------+--------+
|   DAY      |  DAU   |
+------------+--------+
| 2019-01-01 |  70    |
| 2019-01-02 |  77    |
| 2019-01-03 |  71    |
| 2019-01-04 |  70    |
| 2019-01-05 |  ...   |
+------------+--------+

Bạn có thể sử dụng công cụ biểu đồ để vẽ biểu đồ giá trị DAU hàng ngày trong biểu đồ đường để nắm được xu hướng tăng trưởng cho doanh nghiệp của mình. Dưới đây là ví dụ về biểu đồ đường được tạo bằng Ubiq

Bạn có thể dễ dàng tùy chỉnh các truy vấn trên để tính DAU cho tháng gần đây nhất hoặc nhận các giá trị DAU hàng ngày và vẽ chúng trên biểu đồ đường.

Nếu bạn muốn tạo biểu đồ, trang tổng quan và báo cáo từ cơ sở dữ liệu MySQL, bạn có thể thử Ubiq. Chúng tôi cung cấp bản dùng thử miễn phí 14 ngày.

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sắp xếp theo ngày &giờ theo thứ tự giảm dần?

  2. PHP - Bảo mật các trang chỉ dành cho thành viên với hệ thống đăng nhập

  3. Sử dụng JDeveloper với Cơ sở dữ liệu MySQL và Cơ sở dữ liệu Oracle trên AWS RDS, Phần 3

  4. Các giải pháp chia tỷ lệ cho MySQL (Nhân rộng, Phân cụm)

  5. Tạo người dùng mới trong MySQL và cấp cho nó toàn quyền truy cập vào một cơ sở dữ liệu