MYSQL练题笔记-聚合函数-游戏玩法分析

仍需成长啊,干自己认为的想干的事情的时候都有很大的挫败,那做别人分配给你的你自然会更难受些,尤其是你不懂的时候,所以加油,好好看待挫折和未成长的路啊!!

一、题目相关内容

1)相关的表和题目

2)帮助理解题目的示例,提供返回结果的格式

二、初步的理解

思路不够好,下面是我尝试用where in的我认为的好的子句,但是想完这部分想了下其他的内容发现还是又很多不通的地方,我认为实在是想不到了,还是去看题解了.

(Select player_id,event_date from activity where event_date in min(event_date)+1 Group by player_id)

三、题解展示和分析

1.我分析的是也用了where in的题解,如下。

1)先分析where in这部分

我忘记了其实后面还要用select语句,我的整个语句就是自己想当然了。

where后面是你是一个字段或者多个字段,in后面是通过select查询出很多的前面字段的可能性,通过select ? from这里问号部分进行字段的筛选,后面自然加上group by。

然后date(event_date+1) 我没想到是这样的形式,所以需要记住日期的加减需要date()函数。

2)分析主句的select ? from的问号部分

这个distinct我是没想到的,因为很多的用户完了多种游戏的,需要取不重复的。下面是没有distinct的结果。

但是好像第二个算总数的时候加上就行,前面的好像不会重复。下面是运行结果

好吧,还是不对,提交才有错误,而且把这整个句子赋值进去就是不行,还是看其他的题解

2.找运行时间最短的一个题解

1)通过连接使第一次登录时间和第二次登录时间在一条记录上

然后因为是左连接,所以on后面的,不满足dateddiff(a.event_date,p.login)=1的记录还是会有的

2)所以select ??from的问号部分需要把值为null的记录的值为0算平均数。

四、总结

忘记左连接了,datediff()之前用过也忘了,且没耐心也是没想透,明天还是尽力总结一波吧,感觉现在很多点漏了,也没理解清楚,我回去反思一下,明天尽力写总结的文章,新题看明天写不写。但是后天一定写,果然去玩了会,脱离下这个苦海回来人就很正常啊,所以要学会换脑子啊!!!

  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值