利来国际娱乐平台下载-业界公认的最权威网站,欢迎光临!

利来国际娱乐平台下载_利来国际官网下载_利来国际下载

类似于手机APP中的人气排行用 SQL 怎么实现

时间:2019-10-06 23:38来源:未知 作者:admin 点击:
可选中1个或多个下面的关键词,搜索相关资料。也可直接点搜索资料搜索整个问题。 展开全部其实人气排行就是个排序功能嘛,说白了就是统计后排序。可以使用DENSE_RANK()函数即可实

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  展开全部其实人气排行就是个排序功能嘛,说白了就是统计后排序。可以使用DENSE_RANK()函数即可实现。打比方,比如数据库一个表中,存放的是某个软件上互相送礼物的信息,假设我们认定,送礼物越多的,人气就越高。那么只要分组统计数据条数(统计条数即送礼物的次数),然后使用上述函数排序,就可以实现这样的功能了。可能你会问,为什么在这里使用的是DENSE_RANK()这个函数,而不是使用ROW_NUMBER(),因为假设两个人A和B,两个人都送了100个礼物,那么RANK函数会排名出一个名字,也就是会出现并列的概念,而Row_NUMBER()却不是,它会把A排成1,B排成2

  事实上这些东西在数据分析的逻辑方式中经常提现,当然,也可以用于比如给客户打分,判定哪个客户是价值客户。

  其实人气排行也不一定就是单一粒度的考察,也可以使用打分的方式实现,比如,A送了100个礼物,每个礼物价值1块钱,B送了50个礼物,每个礼物价值5块钱,那么我们怎么能说A的人气就高,B的人气就低呢?其实可以这样判定,我可以设定在这个表中的数据,礼物数量排名前100的,给5分,100~200的,给4分这样一次类推,,同样礼物金额也这样做,金额排名100的给5分,100~200的,给4分这样一次类推,然后计算一列总分,最后按照总分,使用Rank函数进行排名。即可实现更复杂,更有价值的计算方式。

(责任编辑:admin)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
最新评论 进入详细评论页>>
推荐内容