Windows のスケジュールされたタスクとして実行される C# プログラムがあります。このプログラムは、読み込み、SQL クエリを実行し、データセットに保存された結果を電子メールで送信してから閉じます。昨日の日付を使用する以外はすべてあります。
ここに私の現在のクエリがあります:
SELECT Store_Id, Paid_Out_Amount, Paid_Out_Comment, Paid_Out_Datetime, Update_UserName, Till_Number, @startdate AS Start, @enddate AS Today
FROM Paid_Out_Tb
WHERE (Store_Id = 1929) AND (Paid_Out_Datetime BETWEEN @startdate AND @enddate)
明らかに、クエリ時に @startdate と @enddate を割り当てる必要があります。午前 12 時から午後 11 時 59 分までが必要なので、これが開始と終了の理由です。たとえば。今日プログラムを実行したい場合、昨日 (23 日) が検索されるため、@startdate には 7/22/12 00:00:00 が割り当てられ、@enddate には 7/22/12 23:59:59 が割り当てられます。 .
プログラムの代わりにクエリでそれを行う方が理にかなっていますか? もしそうなら、どうすればクエリを変更できますか?