|
▼まつ さん:
こんにちは
>例えば入力されているデータが
> [開始年月日]データが、2008/08/30
> [開始時間]データが、12:00
> [終了年月日]データが、2008/09/02
> [終了時間]データが、12:00
>が入力されていた場合に
>2008/09/01 と 00:01 が入ってるという判断はどうしたら良いのでしょうか?
本当に↑のようなデータがDBの各フィールドに入っているとして話します。
これが表示はこうです。というだけの話なら下記の説明は根本的に違ってきます。
データ型は先に書いたように日付型の話です。
日付型データはdouble型の数値ですから足し算が出来ます。
「2008/08/30」は39690 、12:00は0.5です。
従って、
[開始年月日]+[開始時間]という演算は成立します。
([開始年月日]+[開始時間]) < (cdate("2008/09/01") + cdate("00:01"))
and
([終了年月日]+[終了時間]) > (cdate("2008/09/01") + cdate("00:01"))
が成立する場合
[開始年月日]+[開始時間]と[終了年月日]+[終了時間] が連続しているなら
その期間の中に2008/09/01 00:01 は含まれます。
(べた書き未検証なので間違ってたら勘弁ね)
クエリのデザインで出来ませんかね?
|
|