2016-11-08 8 views
0

私は2つの日付があるホテル管理プロジェクトに取り組んでいます。 1つの日付は部屋が予約された日付で、その他は出発日です。どちらの日付もすでにデータベースに入っています。新しいゲストが来て、言及されたこれらの2つの日付の間に同じ日付に予約された場合、選択された日付のルーム予約のようなメッセージが表示されます。データベースのすべてのレコードの日付チェックを行う方法

+0

あなたがどれだけ手に入り、何が動作していないかを教えてください。 SQLプロシージャーを試しているのですか、C#メソッドだけを試していますか? – Poody

+0

C#プロジェクトでこの操作を実行する必要があります。しかし、私はSQL Server 2008のロジックを探しています。 –

+0

@RahulKumar私の答えを確認 –

答えて

0
select Count(1) from tablename where getdate() between Startdate and EndDate 

あなたの状態をチェックしてください。もしカウントが> 0の靴あなたのメッセージ

*テーブル名= yourtablename

*開始日と終了日=

UPDATEあなたのColumnNameにあたりとして適宜変更://おそらく、ポスト

select Count(1) from tablename where getdate()>=Startdate and getdate() <= EndDate 
+0

それは1つの日付でのみ動作しますが、私は両方の日付、すなわち部屋の予約日と出発日を選択しなければならないし、ない。 –

+0

@RahulKumar最新の回答を確認してください。今は簡単? –

+0

あなたはちょうど私にヒントを与えるのを待つ –

0
declare @bookingDate as datetime ,@roomId as int 
Select @bookingDate = '[Insert Date Here]',@roomId = [Enter your roomId] 

select 1 as 'booked' from some_table 
where @bookingDate > date_checked_in 
and @bookingDate < date_checked_out 
and roomId = @roomId 

実際のテーブルはどうなっていますか?

+0

テーブルが複雑すぎます。 2つのフィールドについて開始日と終了日を考えてみてください –

+0

これでうまくいくかもしれません。部屋を利用できるかどうかを示すビット値を返す関数に変換することもできます。 ie f_IsRoomAvailable(roomId、Required_Date) または、指定した日付に使用可能な部屋のリストを返すストアドプロシージャを作成します。 –

関連する問題