嘿所有我有一个每天运行的应用程序来收集SQL Server 2008数据库中的表的更新。我还有一个前端网站,显示用户的统计信息。
我想知道一旦他们登录网站就告知用户数据库当前正在更新。
我到目前为止的代码是:
SELECT *
FROM dataLog
WHERE theDT >= '2012-12-05 00:00:00'
AND theDT <= '2012-12-05 23:59:59'
AND theType <> 'Completed'
当应用程序启动时,它会将此记录写入dataLog
表:
id | theDT | theMsg | theFunction | theType
130 2012-12-05 09:17:13.000 Beginning Main Starting
完成后写道:
id | theDT | theMsg | theFunction | theType
137 2012-12-05 09:47:13.000 Ended Main Completed
我只是不确定如何检查,因为我上面的代码每次都显示它,无论它是否已经完成。
答案 0 :(得分:1)
试试这个:
select max_dt, theType from
datalog d inner join
(SELECT max(theDt) as max_dt FROM dataLog) m
on d.theDt = m.max_dt
答案 1 :(得分:0)
很抱歉,如果这太简单了。
Select Top 1
*
From dataLog
Where theDate < GetDate()
Order By theDate DESC
然后您的前端可以显示当前状态,如果状态为Starting,则显示“正在更新:从x开始”消息,如果状态为“已完成”,则显示“在x处完成更新”消息。 / p>