56,677
社区成员
发帖
与我相关
我的任务
分享
select * from
(
SELECT DISTINCT log1.uid,count(log1.uid) as aa
FROM loginlog AS log1
WHERE log1.uid = (
SELECT DISTINCT log4.uid
FROM loginlog AS log4
WHERE DATEDIFF( log4.logintime,log1.logintime) <= 3 && DATEDIFF( log4.logintime,log1.logintime) >=1
AND log1.uid = log4.uid )
GROUP BY log1.uid
) a
left join
(
SELECT DISTINCT uid,count(uid) as bb
FROM loginlog GROUP BY uid
) b on a.uid=b.uid where a.aa+1 = b.bb;
select * from
(
SELECT DISTINCT log1.uid,count(log1.uid) as aa
FROM loginlog AS log1
WHERE log1.uid = (
SELECT DISTINCT log4.uid
FROM loginlog AS log4
WHERE DATEDIFF(log4.logintime,log1.logintime) in (1,2,3)
AND log1.uid = log4.uid )
GROUP BY log1.uid
) a
left join
(
SELECT DISTINCT uid,count(uid) as bb
FROM loginlog GROUP BY uid
) b on a.uid=b.uid where a.aa+1 = b.bb
select distinct uid
from
(
select distinct *
from loginlog
) a
where
exists
(select 1
from loginlog
where uid = a.uid
and
(
datediff(day,a.logintime,logintime)=1
and
datediff(month,a.logintime,logintime)=0
)
)
and
exists
(select 1
from loginlog
where uid = a.uid
and
(
datediff(day,a.logintime,logintime)=2
and
datediff(month,a.logintime,logintime)=0
)
)
and
exists
(select 1
from loginlog
where uid = a.uid
and
(
datediff(day,a.logintime,logintime)=3
and
datediff(month,a.logintime,logintime)=0
)
)
select distinct a.uid from loginlog a,loginlog b ,loginlog c
where
date_add(a.logintime,interval 1 day) = b.logintime
and
date_add(a.logintime,interval 2 day) = c.logintime
and
a.uid = b.uid
and
a.uid = c.uid;
select distinct a.uid from loginlog a,loginlog b ,loginlog c where
a.logintime+1 = b.logintime
and
a.logintime+2 = c.logintime
and
a.uid = b.uid
and
a.uid = c.uid;