我很想在您的用户页面上查看您使用SO / SF连续几天的次数。有点像在Unix机器上查看您的正常运行时间。 -代码从站
我认为这将是一个很好的功能,因此希望将其发布以供讨论。
我个人知道,我希望能够连续浏览我访问过该网站的几天,而不必自己弄清楚。
#1 楼
在创建了两个基于连续30天的新徽章(“热情”,更早的“ Woot”)和100(“狂热”)之后,这是一个很大的建议。我目前追求我的“ Woot”徽章(随后也追求我的“ Fanatic”徽章)-我认为大约需要20-25天。
评论
至少有30天存在-我不确定是否拥有它;)
- 罗兰肖
09年6月29日在20:43
我很自豪 - 我目前正努力让我的工作30天......没有线索,我是多么接近......不到30天,这是肯定的:)
–桑普森
09年6月29日在20:44
我和你在一起,乔纳森(Jonathan),我相信我只错过了一天(愚蠢的家庭度假!),但是我必须搜索日历以弄清楚自那时以来有多少天。
–提莫西·卡特(Timothy Carter)
09年6月29日在20:45
那么这种发展正在进行吗?
–user146056
2010-4-13在23:07
我知道我已经访问了60多天,因为SO是我的主页,但我的访问量显示为13,似乎有问题。
– Ta01
2010-6-22 12:41
我认为有一个错误,我昨晚在家时正在上SO,然后我今天开始工作,我的个人资料说8,然后我刷新了,并说1.有点奇怪。我想知道使用其他计算机是否会引起问题?
– JD Isaacks
2010-6-28 at 13:58
所以我连续41天...为什么我没有徽章?
–FabianCook
2012年10月7日,9:56
实际上是狂热者100天,狂热者30天
–FabianCook
2012年10月7日9:58
@RowlandShaw我离100只有4天的路程
–泰勒(Luke Taylor)
16年5月26日在0:30
#2 楼
我会发现并发天数计数器很有趣。我很确定我已经连续使用StackOverflow和ServerFault超过30天了。
但是没有徽章。
每天访问StackOverflow很容易,但仍然“错过一天”。 StackOverflow的一天从午夜(GMT)开始。所以我的“ StackOverflow日”从我的时间(东部时间)晚上8点开始。因此可以想象,我只是在一个早晨登录,直到第二天晚些时候才回头...从技术上讲,这“丢失”了介于两者之间的按堆栈跟踪的一天。
我会没事的。
更新:哦,废话。可能有轻微的错误计算。我可能-可能-再过一两天。我们会看到的。
评论
最后一部分是一个好点。 “今天”被视为访问该网站的截止日期是什么?我碰巧想到这个晚上晚上11:55
–JSchaefer
09年6月29日在21:17
我的每日最高投票数计数器从东部时间晚上7点左右开始。可能是我最初注册时或其他时候。我不知道并发天数是否以相同的方式计算。
– Robert Cartaino
09年6月29日在21:48
我相信所有时间(代表上限,投票等)均基于格林威治标准时间。
–提莫西·卡特(Timothy Carter)
09年6月30日在1:52
我想你是对的。我昨晚看了看,原来我的“白天”是从晚上8点开始,时区是格林尼治标准时间-4h。因此,如果您在一天中的不同时间登录,则很容易错过“ StackOverflow日”。我将更新我的原始帖子。
– Robert Cartaino
09年6月30日在13:45
同样,您可以通过在UTC午夜附近进行活动来加倍工作时间(因此,如果您所在的时区是UTC-5,并且考虑了夏令时,则您需要在19:45到20之间进行活动:每隔15天)
–Rowland Shaw
09年8月13日在8:01
不幸的是,它在28小时之内无法正常工作。 xkcd.com/320
–mmx
09年9月9日在7:01
+1:很高兴我不是唯一对此感到惊讶的人(对不起)。我将计算机设置为在晚上7点自动加载所有站点,以防万一那天我还没去。我在格林尼治标准时间-5,所以100天后我感到非常失望。我想我一定已经离开了一两秒钟了。
– Pops
2010年5月11日在22:47
真令人失望。我已经工作了两个多星期,今天我登录才看到我访问量最大的serverfault.com只有3天。啊! Robert感谢您提供信息。
–城堡城
2010年6月23日在15:18
#3 楼
这种查询将能够提供配置文件的数据。with numberedrows as(
select
row_number() over (partition by UserID order by CreationDate desc) as NumRowsFromToday,
datediff(day,CreationDate,getdate())+1 as DaysFromToday,
CreationDate,
UserID
from tablename
where UserID = @UserID /* Optional line that can be removed to get everyone's current run */
)
select UserID, min(CreationDate) as StartOfRun, max(DaysFromToday) as LengthOfRun
from numberedrows
where DaysFromToday = NumRowsFromToday
group by UserID
order by max(DaysFromToday);
这是查询背后的想法:
我知道SQL确定访问的最小连续天数?他们每天每位用户仅存储一个条目(如果不是,则需要
DENSE_RANK
而不是ROW_NUMBER
,并且OVER
子句需要截断日期)。因此,如果您对这些天进行编号(向后),则当前连续天数仅包含行号与从那时到今天为止的天数相同(加一)的条目,因此您不会开始计算该天数从0天开始。在(UserID,CreationDate)上有一个索引,它也应该很快运行。
所以...希望Jeff&co密切关注这个问题,可以考虑吗?
罗布
#4 楼
感谢您实现此功能。我已经想了好一阵子了,当我达到100天标记并最终获得了当当徽章。一直以来,每天都虔诚地访问该网站,甚至在我的iPhone上添加书签,以便在旅行或一天中无法访问计算机或Internet的情况下单击该书签即可获得信用。
所以,我单击进入我的个人资料,我在...(连续滚动)...连续15天... F @#$!K
不知何故,在某个地方我一定没有对站点链接进行足够的单击,或者可能是时区问题,或者上帝知道了什么,但是在追逐此徽章大约6个月后,我显然无法获得它。 br />
之所以对这一功能表示赞赏,是因为我终于知道自己的立场。当我有问题或想回答这些问题时,我将回到只是访问该站点,而不是每天检查一次,只是进行点名。感谢您给我一天的时间。
评论
我很失望地看到这个建议已经提出,但尚未得到答复。我仅次于此,我刚刚达到31天,但还没有徽章,所以很明显我错过了一天,但是我不知道是上周还是29天前。
如此连续332天,当我达到365时我会获得双金吗? :)
似乎还没在area51上...
这是在2010年10月实施的。