週末や休日を除いて、SQL で date-diff を実行する際の問題に対する多くの回答を見つけました。私の問題は、日付の比較を行う必要があることです。作業日が親レコードの送信日から 3 日以内の子レコードはいくつありますか?
date-diff の回答のほとんどにはカレンダー テーブルが含まれます。date+3 を返すサブセレクトを作成できれば、残りは解決できると思います。しかし、日付+3を返す方法がわかりません。
そう:
CREATE TABLE calendar
(
thedate DATETIME NOT NULL,
isweekday SMALLINT NULL,
isholiday SMALLINT NULL
);
と:
SELECT thedate AS fromdate, xxx AS todate
FROM calendar
私が望むのは、todate が fromdate + 72 時間であり、週末と休日を数えないことです。isweekday で isholiday ではない COUNT(*) を実行するのは簡単ですが、DATEADD() を実行するのは別の問題です。
どこから始めればよいかわかりません。