• ベストアンサー

翌営業日までの日数をSQLで求めたい

日付と休日フラグの2つのフィールドを持つ カレンダーテーブルを使用して 翌営業日までの日数を求めるSQLを教えていただけ ますでしょうか。 使用環境はaccess2007です。 カレンダーテーブル date flg ---- --- 4/1 0 → 3(翌営業日まで3日間) 4/2 1 → 2(翌営業日まで2日間) 4/3 1 → 1(翌営業日まで1日間) 4/4 0 → 1(翌営業日まで1日間) 4/5 0 → 1(翌営業日まで1日間) よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • yamada_g
  • ベストアンサー率68% (258/374)
回答No.1

こんな感じでどうでしょうか。 SELECT date , (SELECT MIN(date) FROM カレンダーテーブル AS T2 WHERE T1.DT < T2.DT AND T2.FLG = 0) - T1.date AS 日数 FROM カレンダーテーブル AS T1; ACCESSの環境がないので動作確認はできていません。

saru83
質問者

お礼

yamada_g様 素早いお返事ありがとうございます。 ばっちり、期待通りに動きました。 サブクエリ―は正解を示されると「そうだよなー」と 納得がいくのですが、いざ実戦になると、なかなか 自力では使いこなせません。。。 もっと勉強に励まないとですね! 本当に助かりました!ありがとうございました。

関連するQ&A