首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何获取比较所有用户的两个字段之间的最大差异?

如何获取比较所有用户的两个字段之间的最大差异?
EN

Stack Overflow用户
提问于 2009-09-25 13:55:40
回答 4查看 96关注 0票数 0

我有一个表,其中包含25个技能的列skill1xp、skill1lvl和skill1rank。每天我都为所有用户更新它,所以有一个datetime列。我正在为一款游戏做一个高分的进度跟踪器,对许多用户来说,我只剩下一个功能,那就是某段时间(天/周/月)的最高收益。

我想这是一个沉重的问题,but...how我会这么做吗?

表结构:http://pastebin.com/m5903aa17

EN

Stack Overflow用户

发布于 2009-09-25 14:28:24

为了显示“谁在给定时间内赢得了最多的XP ",您需要以至少"X”的粒度存储有多少XP用户获胜。最简单的解决方案几乎肯定是存储XP won和时间戳,给你一个秒的"X“。

代码语言:javascript
运行
复制
create table xprewarded (
  track_users_id int(11) NOT NULL,
  xpreward int(11) NOT NULL,
  rewardtime timestamp NOT NULL DEFAULT NOW()
);

要获得在过去一天中赢得最多经验的人:

代码语言:javascript
运行
复制
select 
    sum(xpreward), 
    track_users_id 
from xprewarded 
where rewardtime > now()-86400
group by track_users_id 
order by sum(xpreward) desc limit 1;

" now ()- 86400“是指定”从现在起,回顾86400秒(或'24小时‘),并返回自那以后创建的任何记录“的过滤器。其他时间段可以用类似的数学方法来完成。

票数 0
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1477426

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档