データベースに「Holidays」というテーブルがあります。このテーブルには、休日の日の範囲が含まれており、開始と終了の2つの列で定義されています。
Holidays (id, name, start, end)
ここで、入力に2つの日付(fromとto)がある場合、休日にないすべての日付をリストしたいと思います。
休日が2012/06/05から2012/06/20であると仮定し、次のように要求します。
- from = 2012/06/01、to = 2012/06/10; 結果は01、02、03、04になります
- from = 2012/06/01、to = 2012/06/22; 結果は01、02、03、04、21、22になります
- from = 2012/06/15、to = 2012/06/22; 結果は21、22になります
しかし、->からまでの範囲で要求されたすべての日についてデータベースにアクセスせずに、この「オープン」日のリストを取得する方法を理解することはできません。
どうすればそれができますか?