0

SQL Server 2008 データベース内のテーブルの更新を収集するために毎日実行されるアプリがあります。また、ユーザーの統計情報を表示するフロント エンド Web サイトもあります。

ユーザーがWebサイトにログインしたら、データベースが現在更新されていることをユーザーに通知する方法を見つけようとしています。

私がこれまでに持っているコードは次のとおりです。

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

上記のコードは、完了したかどうかに関係なく毎回それを示しているため、それを確認する方法がわかりません。

4

2 に答える 2

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
于 2012-12-05T15:09:06.683 に答える
0

これが単純すぎる場合は申し訳ありません。

Select Top 1
  *
From dataLog
Where theDate < GetDate()
Order By theDate DESC

その後、フロント エンドは現在のステータスを表示できます。ステータスが開始中の場合は「更新中: x で開始しました」というメッセージが表示され、ステータスが「完了」の場合は「x で更新が完了しました」というメッセージが表示されます。

于 2012-12-05T15:11:51.167 に答える