select min(membersinceutc) where datediff(hh, membersinceutc, getutcdate()) <= 24 得到 min( membersinceutc) 是整点的如
如果修改成 where membersinceutc >= dateadd(hh, -24, getutcdate()) ,则得到时间非整点, 如 2014-11-24 04:37:19.917
1. 应该怎么改和前一句一样结果, 而且是membersinceutc 在函数外面的效果?求最佳方法
------解决思路----------------------
我之前误解你的意思了
WHERE membersinceutc >= CONVERT(VARCHAR(14),dateadd(hh, -24, getutcdate()),120)+'00:00'
------解决思路----------------------
如果 min(membersinceutc) 始终能返回整点时间,岂不是 membersinceutc 的记录很多分步到所有的 1/300 秒。
那么就不要从表中查询了,可以直接用当前日期计算得到了。