[pgsql-jp: 25981] Re: 時間帯検索の重複チェック
koumei2 @ 104.net
koumei2 @ 104.net
2002年 5月 16日 (木) 16:46:14 JST
はじめまして。K2です。
On Thu, 16 May 2002 16:20:55 +0900
Hiroshi Ishiura <issy777 @ entrance-e.com> wrote:
> 施設予約スケジュールのようなもの作っており、
> 施設予約時間の重複チェックでいいSQL文が思いつきません。
>
> 例えばreserveテーブルに以下のデータが入っていた場合
> date |start_time|end_time
> -----------------------
> 2002-05-16 | 10:00:00 |13:00:00
>
> そしてフォームより次の入力がされた場合
> 2002-05-16 | 10:30:00 |12:00:00 A
> 2002-05-16 | 13:00:00 |15:00:00 B
> 2002-05-16 | 12:00:00 |14:00:00 C
> 2002-05-16 | 09:30:00 |11:00:00 D
>
> 現状
> select * from reserve where date='$s_date' and start_time <= '$datetime'
> and end_time >='$datetime'
いまいち $s_date とか $datetime が何を表しているのかよく分からない
ので外しているかもしれませんが、以下のような感じで如何でしょう?
$s_time を開始時刻、 $e_time を終了時刻とします。
select * from reserve where date='$s_date' and end_time > '$s_time' and
'$e_time' > start_time;
でも、その前に start_time と end_time を timestamp 型にした方がいい
と思います。
上の SQL でも日付がまたがるような予約についてはダメですし。
---
K2
Email: koumei2 @ 104.net
URL: http://koumei2.flets.cds.ne.jp:2080/
pgsql-jp メーリングリストの案内