用sql求2018年4月每个时段的,pv、uv 数量、按照uv转化率取top5. -- uv 转化率 = 转化人数/uv数量 ,假设现在转化人数是 1
时间: 2023-07-15 10:15:35 浏览: 87
假设数据存储在表格log
中,包含以下字段:
id
: 日志IDtimestamp
: 时间戳pv
: 页面浏览量uv
: 独立访客数
则可以使用以下SQL语句来查询2018年4月每个时段的pv、uv数量和uv转化率:
SELECT
DATE_FORMAT(FROM_UNIXTIME(timestamp), '%Y-%m-%d %H') AS time,
SUM(pv) AS pv_count,
COUNT(DISTINCT id) AS uv_count,
1 / COUNT(DISTINCT id) AS conversion_rate
FROM
log
WHERE
timestamp >= UNIX_TIMESTAMP('2018-04-01 00:00:00')
AND timestamp < UNIX_TIMESTAMP('2018-05-01 00:00:00')
GROUP BY
DATE_FORMAT(FROM_UNIXTIME(timestamp), '%Y-%m-%d %H')
ORDER BY
conversion_rate DESC
LIMIT
5
解释:
- 使用
DATE_FORMAT
函数将时间戳转换为YYYY-MM-DD HH
格式的字符串,表示每小时的时间段。 - 使用
SUM
函数计算每个时间段的页面浏览量。 - 使用
COUNT(DISTINCT id)
函数计算每个时间段的独立访客数。 - 使用
1 / COUNT(DISTINCT id)
计算每个时间段的uv转化率。 - 使用
GROUP BY
将结果按时间段分组。 - 使用
ORDER BY
将结果按转化率降序排列。 - 使用
LIMIT
限制结果集大小为5。
相关推荐














