0

日付を確認するクエリの書き方がわかりません。

例えば;

部屋のテーブル; room_id, number_of_rooms, checkin(date: 1/05/2012), checkout(date:14/05/2012);

ユーザーが入力した日付(チェックインとチェックアウトの日付)を部屋のテーブル(チェックインとチェックアウトの日付)でチェックするクエリを書きたいと思います。

アイデアは、ユーザーが入力した期間が、部屋テーブルのチェックイン日とチェックアウト日の間にあるかどうかを知ることです

このようなもの;

select * from romms 
where checkin and checkout date is not among user_entered_checkin and user_entered_checkeout
4

2 に答える 2

2

多分

SELECT * FROM rooms
WHERE (checkin IS NOT BETWEEN user_entered_checkin AND user_entered_checkout)
  AND (checkout IS NOT BETWEEN user_entered_checkin AND user_entered_checkout)
于 2012-04-29T06:18:25.567 に答える
0

ユーザーが入力した範囲から完全に外れたテーブルの範囲が必要な場合は、次のようにします。

...
WHERE checkin  > user_entered_checkout
   OR checkout < user_entered_checkin

範囲が少なくとも部分的にユーザーが入力した範囲外にある行が必要な場合、条件は次のようになります。

...
WHERE checkin  < user_entered_checkin
   OR checkout > user_entered_checkout
于 2012-04-29T15:24:53.797 に答える