アプリ版:「スタンプのみでお礼する」機能のリリースについて

クエリ-を使って作業日と作業者の2つを絞り込んでフォームに
表示させようとしています。
作業者の抽出条件はForms![フォーム名]![テキストボックス名]にして
作業日も同じようにForms![フォーム名]![テキストボックス名]すると
作業日と作業者がきちんと表示されました。
これだと1レコードのみの表示になってしまうので「1人の作業者が200204月に作業した日全部」を表示するには作業日の抽出条件をどのように入力したらいいのでしょうか?
いろいろやってみたんですが出来ませんでした。
このやりかただと出来ないのでしょうか?
すみませんがよろしくお願いいたします。

A 回答 (5件)

こんにちは。

maruru01です。

期間指定のBETWEENを使用する方法(WHERE句のみ)。

WHERE (作業者 = 'A') AND (作業日 BETWEEN #2002/4/1# AND #2002/4/30#)
    • good
    • 0
この回答へのお礼

明日にでもちょっとやってみます。
また質問なんですけど#ってどんな意味があるんですか?

お礼日時:2002/09/09 23:52

Like "200204*"を使用するか


Left関数 を使用して
Left([作業日],6)="200204"
上記の抽出条件をクエリに記述すればそのフィールドの値が左から6桁が200204の
レコードを全て抽出できます。
(テキストの値に対してです。)
    • good
    • 0
この回答へのお礼

Left関数ですか?
ほぇ~いろいろな方法があるんですねぇ!
勉強になります。
ありがとうございました。

お礼日時:2002/09/14 23:02

>また質問なんですけど#ってどんな意味があるんですか?


#で括ることで、その間の文字列を日付文字列として認識します。
フィールドが日付型の場合は、#で括らないと、検索出来ません。

>因みにあいまい検索っぽくは出来ないんでしょうか?
あいまい検索は、あくまで文字列に対するものです。
"200204*"
というのは2002年4月の全てということではなく、"200204"という6文字で始まる文字列を検索するということです。
従って、この場合は、作業日フィールドのデータ型が文字列で、"20020401"のような形の入力になってなければいけません。(日付の区切り記号の"/"も入っていてはいけません。)
この条件をクリアしていれば、

作業日 LIKE '200204*'

のようなあいまい検索が使用出来ます。
    • good
    • 0
この回答へのお礼

なんどもすみません。
作業日フィールドは文字列なんでさっそくやってみます。
ありがとうございました。

お礼日時:2002/09/14 23:01

作業日がDate型であればmaruru01さんの回答で良いと思います。


作業日がテキスト型であれば範囲の指示のところを
BETWEEN "20020401" AND "20020430"に変えてください。

例えばAccessのクエリであれば作業日のフィールドの抽出条件に
Date型であればBETWEEN #2002/4/1# AND #2002/4/30#
テキスト型であればBETWEEN "20020401" AND "20020430"
で抽出が出来ます。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
因みにあいまい検索っぽくは出来ないんでしょうか?

お礼日時:2002/09/09 23:54

作業日を日付/時刻型として、



select * from T where T.作業者 = 'A' and T.作業日>= #2002/4/1# and T.作業日 < #2002/5/1#;

とか。
    • good
    • 0
この回答へのお礼

す・すいません・・・
質問のしかたがよくありませんでした。
できればあいまい検索みたいなかんじで出来ないでしょうか?
たとえば200204*みたいな感じでフォームに入力すると200204月分のデータが
表示されるような?

お礼日時:2002/09/09 23:46

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す