マイクロソフトAccess97を使って、テーブル上の「年月」のデータのうち、ある条件に該当するものについてクエリーで「1ヶ月前」あるいは「2ヶ月前」の年月にまとめて置換えようとしています。(例:200705→「200704」あるいは「200703」へ置換え)
クエリのフィールド欄に、
実年月:[○○テーブル名]![年月]-1 あるいは
実年月:[○○テーブル名]![年月]-2
と入力すると、月によっては求めたい結果が出ます。
ただ、年をまたがるような場合にはうまくいきません。
どんなケースでも(例えば、もとの年月が2007年1月の場合に、1ヶ月前→「200612」、2ヶ月前→「200611」と変換される)きちんと処理がされるようにするためには、どうしたらよいか教えて頂けないでしょうか。
No.2ベストアンサー
- 回答日時:
>200705
これはAccessにとってはただの数字または文字列で年月とは見てくれませんん
これを日付と分かる形に変形してやらないと日付関連の関数は使えません
実年月: DateAdd("m",-1,DateValue(Format([数字],"0000\/00""/1""")))
CHRONOS_0様
早速に、どうもありがとうございます。
教えていただいた式を入れたら、200701のようなケースでも1ヶ月前or2ヶ月前が「2006/12/01」といった形で表示されるようになりました。
さらに贅沢な質問をさせていただいても良いでしょうか。
「2006/12/01」など「年/月/日」での表示ではなく、結果を「年/月」で表示させる場合は、式をどう変えればよいでしょうか?
また追加の質問になってしまうのですが、もともとの年月データはテキスト型でしたので、そのデータと今回変換した年月(日付時刻型)を後々紐付けするのは無理なんですよね?
今回の作業の後、次は別のテーブルにある200701のテキスト型データと今回変換した200701の日付時刻型データでリレーションシップを設定するといったことが必要になってくるため、お伺いしています。
リレーションシップをかけるのが無理な場合、今回日付時刻型に変換して年月を置き換えたデータを、年月はそのままでまたテキスト型に変更するようなことはできますか?(200701(テキスト型)→2006/12に変更(日付時刻型、1ヶ月前)→200612(テキスト型に変更))
それができないなら、もともとの年月の方を日付時刻型に変えるしかないですよね?
No.4
- 回答日時:
回答はNo3さんが出しておられますが
根本的な改良法は
>もともとの年月の方を日付時刻型に変えるしかないですよね?
これでしょうね
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- 猫 ペットロス(野良ネコちゃんが家猫に)9月23日他界しました。 3 2022/09/24 12:09
- Excel(エクセル) 【vba】日付の形式が勝手に変わってしまう。 1 2022/09/29 10:54
- Excel(エクセル) 非表示にしたい行をグループ化して折り畳み 4 2022/09/17 20:17
- Oracle update文で質問です。 下記の条件でupdateをしたいですが、どのようにしたら良いでしょうか。 2 2022/06/23 10:51
- Access(アクセス) Accessクエリで年月フィールドを年のみで抽出する方法について 2 2022/08/29 18:10
- Access(アクセス) accessの日付フィールドから前年度だけを取り出したい 3 2022/04/13 23:13
- その他(年金) 【至急】確定拠出年金の移行について教えてください 2 2022/06/02 11:13
- Visual Basic(VBA) VBAで重複データを確認したい 5 2022/10/07 16:24
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESSのSQLで、NULLかNULLでな...
-
オラクルではできるのにSQLSERV...
-
sqlserverで集計結果をUPDATEし...
-
シャープレジスター エラーコード
-
更新クエリでキー違反
-
違いを教えてください
-
MAX値を条件にデータを取得する...
-
sqlplusでバックスペースが効か...
-
ACCESSで複数テーブルを結合し...
-
sqlserverで同一キー単位で金額...
-
アクセス 日付抽出(年月のみ)...
-
AccessのSQLで、FROM句の構文エ...
-
「マスタ」と「テーブル」の違...
-
2つのテーブルから条件に一致...
-
クエリのキャンセルがいつにな...
-
ACCESS 一つのフィールドに複...
-
SELECT時の行ロックの必要性に...
-
3つ以上のテーブルをUNIONする...
-
Access 削除クエリが重い
-
Access VBA [リモートサーバー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
オラクルではできるのにSQLSERV...
-
ACCESSのSQLで、NULLかNULLでな...
-
sqlserverで集計結果をUPDATEし...
-
アクセス 日付抽出(年月のみ)...
-
ACCESSで複数テーブルを結合し...
-
MAX値を条件にデータを取得する...
-
更新クエリでキー違反
-
AccessのSQLで、FROM句の構文エ...
-
違いを教えてください
-
sqlserverで対象のレコードを削...
-
シャープレジスター エラーコード
-
accessでのリンクテーブルの更新
-
access前月差分クエリ書き換え...
-
sqlplusでバックスペースが効か...
-
MySQLのON DUPLICATE KEY UP
-
sqlserverで同一キー単位で金額...
-
sqlserverでUPDATEできません
-
Access2000へのインポートエラー
-
片方のテーブルにないデータを...
-
集計処理について
おすすめ情報