• ベストアンサー

ACCESS選択クエリーについて

テーブルのあるフィールドを条件を付け抽出したいのですが、、 (例)生年月日フィールドが、19900101~19911231 までのデータを全て抽出したい。 と言った時の条件はどう指定すれば良いのでしょうか 本を参照してみたのですが、この様な指定方法が載っておりませんでした。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Dxak
  • ベストアンサー率34% (510/1465)
回答No.2

> 別テーブルのフィールド(日付型)を使用する場合は > どの様に指定すると良いのでしょうか? ?抽出条件として、使用する? (想像的に、どういうパターンだか・・・。) 単純に日付型であれば Between [テーブル名]![開始日] And [テーブル名]![終了日] になりますが、開始日も終了日も日付型の前提です。 また、どちらか片方がない場合、 [開始日] 以降の日付を出したい。 [終了日] 以前の日付を出したい。 の条件も追加したいと意向が変わるようでしたら・・・。 もう一工夫でNz関数を使用するって手も使えます。 Nz([テーブル名]![開始日],#1900/1/1#) Nz([テーブル名]![終了日],#3000/1/1#) とかで、代用~。 ただし、テーブルからの引用の際、テーブルがクエリー上に追加されている場合が前提としてます。 クエリー上引用されていない場合、D系の関数を使用して引用してくる事も可能ですが、式を別途作成します。 他にテーブルではなくフォームとかからの引用の場合 Forms![フォーム名]![コントロール名] に置き換えれば可能ですが、日付型の場合、型の明示を行ったほうが良いので CDate(Forms![フォーム名]![コントロール名]) の方が良いかもしれません。 後、VBAとかから設定する事も可能ですが、そこまでの説明は不要です?

ship1950
質問者

お礼

たいへん丁寧に回答をいただき感謝します。 よく分かりました、有難うございました。 <from ~ to>のパラメータ指定を使う事にしましたが、たいへん参考になりました。ご教授有難うございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • Dxak
  • ベストアンサー率34% (510/1465)
回答No.1

生年月日フィールドのデータの型によります。 数値型の場合 Between 19900101 And 19911231 文字型の場合 Between '19900101' And '19911231' 日付型の場合 Between #1990/01/01# And #1991/12/31# とデータの型によって条件式が変わってきます。 他にも、メモ型の場合って、抽出できたかは???

ship1950
質問者

お礼

早速の回答有難うございました。 早速試してみました、フィールドが日付タイプでしたから日付型で指定しましたところOK!でした。 助かりました。 ちなみに、抽出日付を直に指定する場合はこれでOKなんですが、別テーブルのフィールド(日付型)を使用する場合はどの様に指定すると良いのでしょうか?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Accessのクエリについて

    お世話になります。 テーブル内の[出荷日]というフィールドに対して、 「出荷日1ヶ月前のレコード」を抽出しようと考えてます。 クエリ実行時に「日付」をパラメータ入力して、 その日付より1ヶ月前の出荷日のデータを出したいのです。 フィールドに対する抽出条件として、 <=[日付]-30 という条件を指定して実行したのですが、うまく いきませんでした。 どのように設定すればよいでしょうか? ご教授よろしくお願いします。

  • ACCESS クエリで”1”でないものを選択するには?

    ACCESS2003で排他選択("1"でないものを選択) をしたいのですが あるフィールドに”1”かブランクが入っていて ”1”以外のものを選択したいのですが クエリのデザイン画面で ------------------------- フィールド テーブル 並べ替え 表示 抽出条件  <> "1" ------------------------- 抽出条件に = "1" を入れると、"1"のレコードのみ 選択できます やりたいのは "1"以外のものを選択したいのです そこで 抽出条件に<> "1"といれると レコードがゼロ件になります また、Not "1"とか <> "1"、とか、Not = "1" と入れてみても、抽出結果はゼロ件になります 原因を教えてください

  • Accessのクエリのデータ抽出のエラー?について

    お世話になります。 Accessのクエリでのデータ抽出について教えてください。 テーブルからフィールドを商品コードと出荷日の2つを選択し、 集計を使用して、商品コードでグループ化して、出荷日で最大にします。 すると、抽出条件で商品コードを指定すると抽出できるのですが、抽出条件で 指定せずすべてのデータを抽出すると出てこない商品コードがあります。 たとえば[A]という商品コードを抽出条件に指定すると抽出できるのですが、 抽出条件で指定せずすべてのデータを抽出するとこの[A]という商品コードが 抽出されません。 何が理由なのかお分かりになりましたらどうぞよろしくお願いいたします。 当方SQLがわかりませんのでクエリのデザインビューでご説明いただけますと 幸いです。

  • アクセス クエリ

    アクセス クエリの抽出について教えて下さい。例えば、1つのクエリの中に数値のフィールドが5つ作成してあり、それぞれ違うフィールドの抽出条件をしています。それぞれの条件を入れてしまうと5つのフィールド条件全てに合ったものしか抽出できません。 5つのフィールドのうち、どれでも1つ一致したら抽出できるようにしたいのですが良い方法を教えて下さい。宜しくお願いします。

  • Accessのクエリーで、*が入っているデータを抜出す方法って?

    助けてください! Accessのクエリーで、*が入っているデータを抜き出すのってどうやるんですか? クエリーの元になるテーブルは1つ、非常に単純なテーブルです。  ●フィールド1=「*」もしくはNullもしくは「英数字」  ●フィールド2=製品番号  ●フィールド3=メーカ番号 テーブルには上記3つのフィールドしかありません。 このテーブルの、「フィールド1に『*』が入っているデータを抜出したいのです。(抜出すのはフィールド1~3全て) 単純に選択クエリーで「抽出条件」に「“*“」と入れると、「フィールド1に英数字が入っている」行まで選択しちゃうんです。そりゃそうだよなーとは思うのですが、じゃあ、どうやったら英数字の入っている行は無視して、純粋に「*」だけの行を抜出せるのかわかりません。 誰かー!助けて―!

  • ACCESS パラメータクエリの設定

    ACCESSでデータの抽出をしています。 抽出をしたいキーワードが15個ほどあり、そのつどクエリを作るとかなり時間がかかります。データは(20万件ほどです) そこで本を見たところパラメータクエリというものがあり、早速試してみたのですができません。 テーブル名は”本”です。 フィールド1…番号  フィールド2…雑誌名 フィールド3…著者  フィールド4…JANコード になっています。 私はフィールド2のところで抽出条件として "[雑誌名を入力してください]" と入れました。 後もう一点ですが、同一雑誌でも名前が少し違って登録されているものもあり、重複するデータを抜き出して削除したいのですが、削除分と削除された残りのデータが共に必要です。こういった場合はどう処理するのが妥当でしょうか?削除分は別に保存した上で、不一致クエリを使えば正確にできますか?もっとよい方法がありますか? どうぞよろしくお願いいたします。

  • access2007 クエリで抽出

    初心者です。クエリで抽出したのですが、一部のデータが抜け落ちます。抽出条件のフィールドはテキスト型で、元のテーブルでコピペで統一しましたが、同じデータが抜け落ちます。削除してやり直しても同様でした。重複クエリを作成するとこのフィールドが重複して出てきます。どこを直したらいいのか見当がつきません。よろしくお願いします。

  • [Access]クエリの抽出条件について

    アクセス初心者です。よろしくお願いします。 クエリの抽出条件に別テーブルのフィールドをあいまい検索で入れたいのですが方法がわかりません。 データシートビューには検索したいテーブル(tbl_1)と 検索する文字列が入ったテーブル(tbl_2)の2つを表示させています。 デザイングリッドは検索したいフィールドを表示し、 抽出条件にLike "*[tbl_2]![フィールド名]*"と入れましたが該当するものがあっても表示されないのです。 どうしたらよいでしょうか。ご伝授ください。

  • Access選択クエリの並び替え

    選択クエリにて抽出条件を指定した後、並び替えを行いましたところ、デザインビューのフィールドが並び替えの条件のみの表示になり、抽出条件を確認出来ません。 再度、抽出条件を確認・変更するにはどうすればよいのでしょうか? 宜しくお願いします。

  • アクセス 選択クエリの複数条件選択

    アクセス初心者です。 受講生マスタと受講データから選択クエリで以下の条件を抽出したいのですが、パラメーターが働きません。 フィールドは、氏名・媒体・入学年月日・パックコースの4つで、入学年月日をにパラメーターを設定して、かつパックコースの番号が「0」と「1」の人を抽出するよう設定したのですが、パラメーターに範囲を入力してもすべてのデータがでてきてしまいます。 SQL文は下記のようになっていました。 SELECT 受講生マスタ.氏名, 受講生マスタ.媒体, 受講データ.入学年月日, 受講データ.パックコース FROM 受講生マスタ INNER JOIN 受講データ ON 受講生マスタ.受講No = 受講データ.受講No WHERE (((受講データ.入学年月日) Between [いつから] And [いつまで]) AND ((受講データ.パックコース)=0)) OR (((受講データ.パックコース)=1)); 入学年月日のパラメータとパックコースの番号の抽出条件を同時に設定することはできないのでしょうか?ご教授いただければ幸いです。

POCKETALKの英語翻訳の精度は?
このQ&Aのポイント
  • POCKETALKの英語翻訳の精度について知りたいです。
  • 英会話学校に通う代わりにPOCKETALKを購入するか迷っています。翻訳精度は高いですか?
  • ソースネクスト株式会社のPOCKETALKは英語翻訳においてどの程度の精度を持っていますか?
回答を見る

専門家に質問してみよう