求助:判断最近连续3次登入次数
时间:2011-12-23
来源:互联网
表名 Log_base
字段
Workdate UserID Level
2011-12-16 907 3
2011-12-17 907 3
2011-12-18 907 3
2011-12-20 1100 4
2011-12-21 1100 4
2011-12-23 1100 4
2011-12-16 1200 5
2011-12-19 1200 5
2011-12-20 1200 5
2011-12-21 1200 5
2011-12-22 1200 6
2011-12-16 1300 3
2011-12-18 1300 6
2011-12-19 1300 9
一个UserId一天只有一条登入记录,用户没登入的话就没数据。
需要判断连续的3次登入记录中level是否相等,如果相等显示1,不相等显示0
不是连续的3天,是判断任意的一天,往后连续3次登入的记录level的值是否一样。
例如用户A的数据是如下
2011-12-16 A 3
2011-12-17 A 3
2011-12-18 A 3
2011-12-20 A 4
在第四条记录等级改变。那么结果应该是
2011-12-16 A 3 1
2011-12-17 A 3 0
2011-12-18 A 3 0
2011-12-20 A 4 0
不会程序,只懂一点点数据库,求助。。。
作者: a79623615 发布时间: 2011-12-23
算是个思路吧:
create table Log_base(
Workdate datetime,
UserID int,
Level tinyint)
insert into Log_base(Workdate,UserID,Level) values('2011-12-16',907,3)
insert into Log_base(Workdate,UserID,Level) values('2011-12-17',907,3)
insert into Log_base(Workdate,UserID,Level) values('2011-12-18',907,3)
insert into Log_base(Workdate,UserID,Level) values('2011-12-20',1100,4)
insert into Log_base(Workdate,UserID,Level) values('2011-12-21',1100,4)
insert into Log_base(Workdate,UserID,Level) values('2011-12-23',1100,4)
insert into Log_base(Workdate,UserID,Level) values('2011-12-16',1200,5)
insert into Log_base(Workdate,UserID,Level) values('2011-12-19',1200,5)
insert into Log_base(Workdate,UserID,Level) values('2011-12-20',1200,5)
insert into Log_base(Workdate,UserID,Level) values('2011-12-21',1200,5)
insert into Log_base(Workdate,UserID,Level) values('2011-12-22',1200,6)
insert into Log_base(Workdate,UserID,Level) values('2011-12-16',1300,3)
insert into Log_base(Workdate,UserID,Level) values('2011-12-18',1300,6)
insert into Log_base(Workdate,UserID,Level) values('2011-12-19',1300,9)
select UserID,
case
when sum(Level)=COUNT(*)*MIN(Level) then 1
else 0
end as 'Status'
from Log_base
--where Workdate>''
group by UserID
本来我只给美女提供意见的,今天俗心忽起,也算有缘吧。
create table Log_base(
Workdate datetime,
UserID int,
Level tinyint)
insert into Log_base(Workdate,UserID,Level) values('2011-12-16',907,3)
insert into Log_base(Workdate,UserID,Level) values('2011-12-17',907,3)
insert into Log_base(Workdate,UserID,Level) values('2011-12-18',907,3)
insert into Log_base(Workdate,UserID,Level) values('2011-12-20',1100,4)
insert into Log_base(Workdate,UserID,Level) values('2011-12-21',1100,4)
insert into Log_base(Workdate,UserID,Level) values('2011-12-23',1100,4)
insert into Log_base(Workdate,UserID,Level) values('2011-12-16',1200,5)
insert into Log_base(Workdate,UserID,Level) values('2011-12-19',1200,5)
insert into Log_base(Workdate,UserID,Level) values('2011-12-20',1200,5)
insert into Log_base(Workdate,UserID,Level) values('2011-12-21',1200,5)
insert into Log_base(Workdate,UserID,Level) values('2011-12-22',1200,6)
insert into Log_base(Workdate,UserID,Level) values('2011-12-16',1300,3)
insert into Log_base(Workdate,UserID,Level) values('2011-12-18',1300,6)
insert into Log_base(Workdate,UserID,Level) values('2011-12-19',1300,9)
select UserID,
case
when sum(Level)=COUNT(*)*MIN(Level) then 1
else 0
end as 'Status'
from Log_base
--where Workdate>''
group by UserID
本来我只给美女提供意见的,今天俗心忽起,也算有缘吧。
作者: yanyuchonglou 发布时间: 2011-12-23
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28