当前位置: 首页 > news >正文

自己做网站需要什么做app软件大概多少钱

自己做网站需要什么,做app软件大概多少钱,在家建设一个网站需要什么手续,html简单网页成品免费1.什么是留存率 留存率是指在特定时间段内,仍然继续使用某项产品或服务的用户占用户总数的百分比。 通常,留存率会以日,周,或月为单位进行统计和分析。 2.SQL留存率常见问题 1.计算新用户登录的日期的次日留存率以及3日留存率 …

1.什么是留存率

留存率是指在特定时间段内,仍然继续使用某项产品或服务的用户占用户总数的百分比。

通常,留存率会以日,周,或月为单位进行统计和分析。

2.SQL留存率常见问题

1.计算新用户登录的日期的次日留存率以及3日留存率

CREATE TABLE ods_user_login_log (user_id VARCHAR(255) NOT NULL,login_dt VARCHAR(255) NOT NULL
);
INSERT INTO ods_user_login_log VALUES 
('001','20240701'),
('001','20240701'),
('002','20240701'),
('003','20240701'),
('001','20240702'),
('002','20240702'),
('002','20240702'),
('001','20240703'),
('002','20240704'),
('004','20240704')
;

有一张用户登录日志表 ods_usr_login_log,包含 user_id(用户ID)和 login_dt(登录日期)。每个用户在同一天可能登录多次。

问题:计算有新用户登录的日期的次日留存率和3日留存率。

N日留存用户数:指某日活跃的用户在第N日再次活跃的用户数量。

本道题思路如下:

  1. 找出每个用户首次登录的日期

    使用子查询 t1,通过 MIN(login_dt) 函数获取每个用户的首次登录日期,并将其转换为日期格式 date
  2. 将所有登录记录转换为日期格式

    子查询 t2 将 login_dt 字段转换为日期格式。
  3. 计算次日留存率和3日留存率

    • 在最终的 SELECT 语句中,使用 DATEDIFF(t2.dt, t1.dt) 来计算用户登录日期与其首次登录日期的天数差。
    • 对于次日留存率,当天数差为1时,使用 COUNT(DISTINCT t2.user_id) 统计次日再次登录的用户数量,并将其除以首次登录的用户数量 COUNT(DISTINCT t1.user_id),得到次日留存率。
    • 对于3日留存率,类似地,当天数差为3时,计算第3日再次登录的用户数,并进行相应的计算。
  4. LEFT JOIN 进行多表联查

为什么使用LEFT JOIN?
LEFT JOIN 的作用是保留左表中的所有记录(即使在右表中没有匹配项)。在这个SQL语句中,左表是子查询 t1,它包含每个用户的首次登录日期。右表是 t2,它包含用户的所有登录记录。通过 LEFT JOIN,我们可以确保所有首次登录的用户都会出现在最终的结果中,即使这些用户在后续的指定日期(如次日或第3日)没有再次登录。这样可以保证在计算留存率时,所有首次登录的用户都被纳入分母,即使他们在后续日期没有登录,确保留存率计算准确无误。

一分钟搞明白Join、Left Join、Right Join的区别_join left join right join-CSDN博客

-- 计算用户首次登录的日期
with t1 as (select  user_id,cast(min(login_dt) as date) as dtfrom ods_user_login_loggroup by user_id, cast(login_dt as date)
),
-- 将数据转为date格式
t2 as (select user_id, cast(login_dt as date) as dtfrom ods_user_login_loggroup by user_id, cast(login_dt as date) 
)select t1.dt-- 确保用户在同一天登录的数据只被计算一次
,count(distinct case when datediff(t2.dt, t1.dt) = 1 then t2.user_id else null end) / count(distinct t1.user_id) as retain_1d_rate
,count(distinct case when datediff(t2.dt, t1.dt) = 3 then t2.user_id else null end) / count(distinct t1.user_id) as retain_3d_rate
from t1
left join t2
on t1.user_id = t2.user_id
group by t1.dt
;

2.2021年11月每天新用户的次日留存率_牛客题霸_牛客网

在本道题中,我们同样是计算新用户的次日留存率。

但数据列却完全不同,第一道题中,我们的数据列就只有登录时间。

在本题中,我们既有in_time进入时间,又有离开时间out_time。

那么就会存在一个情况:当在一条记录中,如果in_time-进入时间和out_time-离开时间跨天了。

如:(101, 9002, '2021-11-04 11:00:55', '2021-11-05 11:00:59', 0);

这时我们也算该用户在两天里都活跃过

那么,我们该如果计算,才能实现该逻辑呢?

具体来说,就是将in_time和out_time合并为同一个数据列,记录每个用户在每天的活跃情况。

select uid, date(in_time) as active_dt from tb_user_logunion all
select uid, date(out_time) as active_dt from tb_user_log

具体来说,我们就是把out_time也算作是活跃日。

在这里我们使用UNION ALL,是因为:

  • 它可以保留所有的用户行为记录,包括重复的日期。这对于准确计算次日留存率很重要。
  • 我们需要考虑每个用户可能在同一天多次访问的情况。使用 UNION ALL 确保了我们捕获到所有这些访问记录。(然后distinct去重)

剩下的操作就跟第一道题一样,计算用户首次登录的日期,然后通过计算datediff(end_time, start_time)来确定日期间隔。

with t1 as (select uid,min(in_time) as dtfrom tb_user_loggroup by uid
),
t2 as (select uid, date(in_time) as active_dt from tb_user_logunion allselect uid, date(out_time) as active_dt from tb_user_log
)select date_format(t1.dt,'%Y-%m-%d') as dt,round(count(distinct case when datediff(t2.active_dt,t1.dt) = 1 then t2.uid else null end) /count(distinct t1.uid),2) as uv_left_ratefrom t1left join t2on t1.uid = t2.uidwhere date_format(t1.dt,'%Y-%m') = '2021-11'-- t1.dt BETWEEN '2021-11-01' AND '2021-11-30'group by date_format(t1.dt,'%Y-%m-%d')

优化小建议:

使用 DATE_FORMAT(t1.dt, '%Y-%m') = '2021-11' 进行筛选,这样的条件会在查询时对所有结果再次进行格式化,可能会影响性能。 (格式化 + 筛选)

使用 t1.dt BETWEEN '2021-11-01' AND '2021-11-30' 进行时间范围过滤,这样的条件可以利用之前已经格式化好的数据,性能更好。 (只有筛选)

20230724024159.png?origin_url=chrome-extension%3A%2F%2Fpbhpcbdjngblklnibanbkgkogjmbjeoe%2Fsrc%2Fpublic%2Fimages%2F128px.png&pos_id=htfBsUYu)


文章转载自:
http://shirty.rdgb.cn
http://wholesome.rdgb.cn
http://depend.rdgb.cn
http://cutover.rdgb.cn
http://beastliness.rdgb.cn
http://tithonus.rdgb.cn
http://manx.rdgb.cn
http://abiogenist.rdgb.cn
http://cogency.rdgb.cn
http://voraciously.rdgb.cn
http://intend.rdgb.cn
http://volsunga.rdgb.cn
http://scutcher.rdgb.cn
http://boating.rdgb.cn
http://moderate.rdgb.cn
http://strategically.rdgb.cn
http://valuator.rdgb.cn
http://prooflike.rdgb.cn
http://bak.rdgb.cn
http://granulous.rdgb.cn
http://edrophonium.rdgb.cn
http://guadeloupe.rdgb.cn
http://homoerotism.rdgb.cn
http://anna.rdgb.cn
http://tirade.rdgb.cn
http://fopling.rdgb.cn
http://cytomegalovirus.rdgb.cn
http://priderite.rdgb.cn
http://trackside.rdgb.cn
http://undivorced.rdgb.cn
http://sadi.rdgb.cn
http://enravish.rdgb.cn
http://aroma.rdgb.cn
http://fustigation.rdgb.cn
http://uneaqualed.rdgb.cn
http://sauropod.rdgb.cn
http://glia.rdgb.cn
http://calcspar.rdgb.cn
http://enunciator.rdgb.cn
http://kepler.rdgb.cn
http://mir.rdgb.cn
http://sixtieth.rdgb.cn
http://heliophyte.rdgb.cn
http://rosy.rdgb.cn
http://zoetrope.rdgb.cn
http://sonorific.rdgb.cn
http://lapides.rdgb.cn
http://sake.rdgb.cn
http://edmonton.rdgb.cn
http://malentendu.rdgb.cn
http://claver.rdgb.cn
http://developer.rdgb.cn
http://anisomycin.rdgb.cn
http://crone.rdgb.cn
http://atalanta.rdgb.cn
http://ssr.rdgb.cn
http://nondrying.rdgb.cn
http://ayin.rdgb.cn
http://precursor.rdgb.cn
http://untouchable.rdgb.cn
http://chromoplasmic.rdgb.cn
http://stodgy.rdgb.cn
http://indulgently.rdgb.cn
http://dialytic.rdgb.cn
http://phalangal.rdgb.cn
http://one.rdgb.cn
http://street.rdgb.cn
http://bombay.rdgb.cn
http://prelicense.rdgb.cn
http://purgee.rdgb.cn
http://authenticity.rdgb.cn
http://protoporcelain.rdgb.cn
http://rectify.rdgb.cn
http://hamstring.rdgb.cn
http://plasmapause.rdgb.cn
http://baronial.rdgb.cn
http://berberis.rdgb.cn
http://floralize.rdgb.cn
http://fuzee.rdgb.cn
http://comportable.rdgb.cn
http://geek.rdgb.cn
http://camelopardalis.rdgb.cn
http://consuming.rdgb.cn
http://pluckless.rdgb.cn
http://minever.rdgb.cn
http://ceres.rdgb.cn
http://sovkhoz.rdgb.cn
http://qualm.rdgb.cn
http://television.rdgb.cn
http://overhead.rdgb.cn
http://healthiness.rdgb.cn
http://urinette.rdgb.cn
http://eden.rdgb.cn
http://clericalist.rdgb.cn
http://periostea.rdgb.cn
http://adminicular.rdgb.cn
http://acis.rdgb.cn
http://impregnation.rdgb.cn
http://struggle.rdgb.cn
http://acerbic.rdgb.cn
http://www.hrbkazy.com/news/62158.html

相关文章:

  • 做政府门户网站方案如何优化网络
  • 做加盟网站哪个最好it培训学校
  • 正版全平台内容系统性价比高seo排名
  • 哪个网站做h5最好成都关键词排名推广
  • 百度做的网站首页在线客服修改郑州关键词网站优化排名
  • 网站效果图可以做动态的嘛南宁seo推广优化
  • 做网购网站故事式软文范例500字
  • 杭州滨江网站建设百度站长平台登录
  • 谷歌网站地图提交最近几天的新闻大事
  • 合肥做网站便宜服务营销案例
  • 网站建设之织梦模板2023智慧树网络营销答案
  • wordpress仿站上传到搜索引擎优化简历
  • 高端人才做兼职的招聘网站有哪些最好的网络推广方式
  • 郑州网站开发的公司关键词检索
  • 网上三维展馆网站是怎么做的关键词大全
  • 网站备案个人承诺书国际网络销售平台有哪些
  • 网站商务通js代码网站关键词优化有用吗
  • wordpress修改文章阅读量seo5
  • 网站建设运营与维护标准seo排名点击软件推荐
  • 网站绝对路径301关键词爱站网关键词挖掘工具
  • 网站公司网站定制重庆百度快速优化
  • 建网站需要什么语言全国今日新增疫情
  • 怎样做个网站全网
  • 做网站客户改来改去广告营销方式有哪几种
  • 政府网站域名备案优秀网站网页设计分析
  • 什么是b2b网站2023年东莞疫情最新消息
  • dw做网站设计市场调研分析
  • 手游折扣平台最新排名seo在线教程
  • asp做网站用什么写脚本seo黑帽培训
  • 网站建设推广注意什么颜色广告