帮忙写个sql语句,跟时间有关

morrisonwu 2011-08-22 02:15:05
就是1到15天 连续登录 送0.05元/天,连续16-30天登录 送0.1元/天,连续31天登录及以上送0.15元/天
这个要怎么写,最主要是如何判断连续多少天
希望大家帮我写下sql语句
...全文
124 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
baiynije 2011-08-22
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 morrisonwu 的回复:]
恩,那如何判断是否连续登录,就是如何判断两次登录的时间相差24小时
[/Quote]
登錄時判斷當前登錄日期減一天是否等於上次登錄日期,如相同,登陸次數+1,如不同重置連續登錄次數
morrisonwu 2011-08-22
  • 打赏
  • 举报
回复
快速结贴
快溜 2011-08-22
  • 打赏
  • 举报
回复
按时间排序取 top 14,再计算14条数据里最小日期跟最大日期的差,如果是14,就应该是连续的,假设你每天只登陆一次的话
morrisonwu 2011-08-22
  • 打赏
  • 举报
回复
恩,那如何判断是否连续登录,就是如何判断两次登录的时间相差24小时
NBDBA 2011-08-22
  • 打赏
  • 举报
回复
这个表结构,增加个上次登录时间和连续登陆天数,在登录时判断是否连续登陆并计算送的数不就可以,这问题为什么抛给数据库?
morrisonwu 2011-08-22
  • 打赏
  • 举报
回复
登录的表 userid logindate money
morrisonwu 2011-08-22
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 nbdba 的回复:]
你的登录记录表结构
你的算法有歧义,14天共送多少?16天呢?
[/Quote]

就是如果连续登录15天及以内,每天0.05元,如果连续登录了14天,就送14X0.05=0.7元
如果连续登录了16-20天,那么从16天起,算0.1元/天,16天就是 15X0.05+0.1=0.85
AcHerat 元老 2011-08-22
  • 打赏
  • 举报
回复
最好给出测试表结构 、 数据 和 你需要的结果!
NBDBA 2011-08-22
  • 打赏
  • 举报
回复
你的登录记录表结构
你的算法有歧义,14天共送多少?16天呢?

34,838

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧