#题目: 请你写出一个sql语句查询新登录用户次日成功的留存率,即第1天登陆之后,第2天再次登陆的概率,
保存小数点后面3位(3位之后的四舍五入)
解析:本题运用了在查询的字段中插入子查询所提供的字段的values值,且使用round函数去精度值,distinct去重复值,
使得每一个唯一value对应不同的字段value,count进行求总个数,date_add()函数找到下一日
SELECT round(count(l.user_id) * 1.0 / (select count(distinct user_id) from login), 3) from login as l where (l.user_id, l.date) in (SELECT l1.user_id, DATE_ADD(min(l1.date), INTERVAL 1 DAY) FROM login AS l1 GROUP BY l1.user_id)



京公网安备 11010502036488号