• ベストアンサー

【Access】クエリでの日付処理(常に新しい更新日を作る)

ganbaroの回答

  • ganbaro
  • ベストアンサー率45% (43/94)
回答No.2

#1さんのやり方でいいですが、 (1)の別のやり方としては、日付加算関数を使われてはいかがでしょうか。 #1さんの例をかりて AA: IIf([銀行テーブル]![日付]<Date(),DateAdd("y",1,[銀行テーブル]![日付]) y:年を加算 mだと月数 いろいろありますがヘルプを見てください 1:期間 マイナスにすると過去になります

wdwdwd
質問者

補足

ありがとうございます。 DateAddの方が、式がシンプルになりそうでしたので、トライしましたが、上手く行きません。 なぜか、"y"としているので、1年足されずに、1日が足されます。 AA: DateAdd("y",1,"2004-12-21") ↓ 04-12-22 mにすると、きちんと1月足されます。dにしても、04-12-22となりますので、問題ありません。 どうなっているのでしょうか。。。 ※Accessのバージョンの問題でしょうか。Access2003を使っていますが、ファイルは、以前の2000形式を使っています。

関連するQ&A

  • Access2003 更新クエリについてご教授下さい。

    初めまして。 今回、初めてご質問させていただきます。 Access2003の更新クエリについてご教授お願いします。 AテーブルとBテーブルがあります。 ■Aテーブル(ALLテーブル)  各フィールド名:  名前(テキスト型)/完了(Yes/No型)/備考欄(テキスト型) ■Bテーブル(更新させたいテーブル)  各フィールド名:  名前(テキスト型)/完了(Yes/No型)/備考欄(テキスト型)  (※Aテーブルと同じです。) Bテーブルの内容をAテーブルへ更新させたいのですが 名前/完了のフィールドは、更新クエリで完成出来ましたが 備考欄の更新が出来ません。 (※備考欄には、コメントがそれぞれ入っています。) どのような形でクエリを作成すれば Aテーブルへ更新が可能になるのでしょうか? 以上、ご教授お願い致します。

  • アクセスのクエリについて

    アクセスのクエリにおいて   店コード、店名  変更日付  備考 1     A店  2004/1/1   2      B店  2004/2/1 3      C店  2004/5/1 1      A店  2005/12/17 2      B店  2005/11/1 3      C店  2005/10/1 上記のようなクエリで店名A店B店C店それぞれの最新の日付を抽出したいのですがわかりません。 ご回答よろしくお願い致します。

  • アクセスの更新クエリの質問です。

    ちなみにAccess2007を使用しています。 A,B,C,Dというフィールドが有り、AフィールドにはCodeが入っています。 Bフィールドには"bb"という言葉、Cフィールドには"cc"という言葉にそれぞれ書き換え、Aフィールドには、今から更新する1レコードを抽出するため、更新クエリ実行時に、パラメーターを入力するように設定しました。 しかし、更新するレコードは、全45000件中、6000件くらいあり、いちいちコードを入れるのが大変です。 もともと、書き換えるためのコードリストがエクセルデータとして有り、Accessにインポートすれば、コードリストをAccessのテーブルにする事も出来ます。このテーブルを使って簡単に、書き換えることは出来ないものなのでしょうか?

  • ACCESSクエリー処理で

    ACCESS2000でのクエリー処理において下記方法を教えてください。 テーブルA   商品A 開始日 終了日   商品A 開始日 終了日   商品B 開始日 終了日   ※商品単位に開始日や終了日が違うレコードが複数存在します。 上記テーブルをクエリーで下記イメージに処理できますでしょうか?   商品A 開始日 終了日 開始日 終了日   商品B 開始日 終了日   

  • Access97のクエリーについて

    Access97のクエリーで次のようなデータ抽出をしたいのですが、設定方法が良く分かりません。 1.約20000レコードのCSVファイルを外部データ   のインポートでTDLを作成。 2.重複クエリーを走行すると、約10000レコードが   重複していた。 3.作成したTBLから重複者がいないデータを抽出した   い。 イメージ: 処理前  a,2222,111,1,1234567  a,1111,100,1,0001234  b,0001,234,1,5555511  c,0003,001,1,0005555  c,0005,201,1,3345678  ↓(クエリー) 処理後  a,1111,100,1,0001234  b,0001,234,1,5555511  c,0003,001,1,0005555 どのような、関数、クエリーを使えば実現できるのでしょ うか。ご教示の程よろしくお願いします。

  • Access 更新クエリについて

    いつもお世話になっております。 今回もAccessについてご指南お願い致します。 ただいまAccess2007で顧客管理DB作成しておりそれは無事完成いたしました。 今回は、更新クエリについてお伺いしたいです。 クライアント様より、お客様の進捗状況データがエクセルで毎週送られてきます。 そのデータ型は毎週同じです。 顧客番号、お客様の現ステータス、申込状況、支払方法登録状況など、 1行ごとにお客様の情報が記載されています。 A B C D E 1顧客番号 ステータス 支払い 入会日 開始日 2S52134 利用OK コンビニ 2015/3/10 2015/3/15 3 … 4 … 5 … といったデータです。 これを貼り付ける用のテーブルを作成しクエリで更新したい項目と紐付ける為の項目(今回は顧客番号)を出してきて、なおかつメインテーブルから更新したい項目をだしてきたクエリを作成しました。 更新用クエリで上記の二つのクエリを紐付けし、更新できるようになりました。 今までは上記でなんら問題なかったのですが、今回は更新データが2つ来ることになりました。 一つは他社利用だった新規のお客様のデータ、もうひとつは自社利用中のコース変更のお客様のデータです。 上記二つのデータはほぼ同じなのですが、新規データの方が項目が何個か多いのです。 毎回毎回自社利用のデータをコピペで新規お客様データに張り付ければ問題ないのですが、毎週の事で手間に思い、もうひとつ上記と同じようにテーブルを少し変えたもので更新クエリを組みました。 そうするとやはり、他社更新→自社更新、自社更新→他社更新どちらの順序で更新しても先に更新した方のデータが空白になってしまいます。 他社、自社共に更新する対象ものは同じものなので当然ですよね。。。 なので今回はテーブルにはったデータのみを更新するという方法をお伺いしたいです。 お前ばかだなあ、こういう方法もあるよって方も是非教えてください!! 分かりにくかったら本当に申し訳ありません。 ご教授の程何卒宜しくお願い致します。

  • ACCESSのクエリからORACLEのDBを更新したい。

    初心者です。 宜しくお願いいたします。 Accessで選択クエリーでORACLEのDBを表示してデータの修正をやっていますが、選択クエリーで複数をリンクさせると更新ができません。更新は1つのDBなのですが、なにか方法があるのでしょうか。更新クエリーならできるのでしょうか。 例)AとBをリンクしてBに更新。

  • 更新クエリがわからない

    windows-xp、Access2003を使っています。 参考書に載っている更新クエリは「同一のテーブル内でデータを更新する」という内容で載っているのを見ました。 が、そうではなく・・・ 更新クエリを作成すると「レコードの更新」という欄が出てくるのですが、そこに、別のテーブルや別のクエリのデータを”ビルド”で作成することはできないのでしょうか? 試みたのですが、”パラメータの入力”というものが出てきてしまいました。 ついでにおわかりになれば、これも教えてください。 ↓↓↓ テーブルAとテーブルB(或いはクエリB)に、同じIDをもつデータがあります。そこで、テーブルAの指定するフィールドへ、テーブルBの新しいデータを入れ込みたい(更新)させたい。 すみませんが、宜しくお願い致します。

  • Accessクエリでのグループ化

    Accessクエリでのグループ化 以下の2つのテーブルが有ります。 ■社員テーブル ID 名前 1 Aさん 2 Bさん 3 Cさん 4 Dさん 5 Eさん ■受付テーブル ID 受付内容 受付日   社員ID 1  xxxxx 2010/3/1   1 2 xxxxx 2010/3/20   3 3 xxxxx 2010/4/10   2 4 xxxxx   2010/4/11  5 5 xxxxx 2010/4/15  1 6 xxxxx 2010/4/30  2 7 xxxxx 2010/5/3  4 そこで社員毎の受付数をカウントしたいと思っています。 ※受付日が2010/4/1以上5/1未満 名前 受付回数 Aさん 1 Bさん 2 Cさん 0 Dさん 0 Eさん 1 となるイメージです。 しかし、実際にクエリを作ると結果が 名前 受付回数 Aさん 1 Bさん 2 Eさん 1 と、なってしまいます。。 名前:グループ化 受付テーブルのID:カウント 受付日:>=2010/04/01 and <2010/05/01 ※社員テーブルの『ID』と、受付テーブルの『社員ID』を  紐つけており、結合プロパティでは『社員テーブルの  全レコードと受付テーブルの同じ結合フィールドのレコード  だけを含める』としております。 あらかじめ、受付テーブルで受付期間の条件でクエリ を作成しておき、それと社員テーブルを紐つけた場合は イメージ通りの結果になるのですが、1つのクエリで 上記イメージでの結果を表示したいと思ってます。 可能でしょうか? ご教授願います。

  • DTS クエリーデザイナ で更新クエリー

    今回、訳あってSQL2000Severを導入する事になり勉強中です。 今までAccessでDB更新/追加/削除は経験あり、HPを見ても移行は簡単なイメージがありましたが、更新クエリーだけイメージがあいません。 TBL A /TBL B の2つのTBLがあり、TBL Aの項目をTBL Bで更新しようとする場合,Accessならクエリーで2つのTBLを追加してTBL AをTBL Bの項目で更新できたのですが、DTSデザイナで更新を選択するとTBL Aしか追加できません。 又、クエリアナライザを使ってもJOINの後の構文エラーから先に進めない状態です。 初歩的質問で申訳ありませんが、助言できる方がいらっしゃいましたら助けて下さい。 サンプルSQL UPDATE [TBL A] AS A INNER JOIN [TBL B] AS B ON A.KOUMOKU = B.KOUMOKU SET [A].[TANKA] = [B].[TANKA]; キーワード 'AS' 付近に正しくない構文があります。