会社のDBにACCESSで繋いで必要な資料を作成しています。そのDBの日付の書式がyyyymmddの型になっていて、クエリの抽出条件でdate()と入力しても上手くいきません。そのために、left(date,4)&"/"&mid(date,5,2)&"/"&right(date,2)としてyyyy/mm/ddの型に直して抽出しています。このやり方だとクエリの実行にとても時間がかかります。yyyymmddのままでパラメータを指定して20070630と入力すると10秒かからずに表示されますが、yyyy/mm/ddの型に直してdate()にすると3分近くかかります。yyyymmddのままでdate()を使う方法はありますか?
No.2ベストアンサー
- 回答日時:
クエリの抽出条件の方を
=Format(Date(),"yyyymmdd")
としたら、いかがですか?
お礼が遅くなってすいません。とても早くなりました。私自身の教えてgooの中でも1,2を争うベスト回答です!とても助かります。有難うございました。
No.1
- 回答日時:
> パラメータを指定して20070630と入力すると10秒かからずに表示されます
もしかしたら、その日付のデータ型が、日付型ではなくテキスト型になっている
のではないでしょうか。
クエリの抽出条件を、以下の式にしてみて下さい;
CStr(Date())
もしくは
Replace(CStr(Date()),"/","")
多分、保存されたデータ内に「/」は含まれていない(表示時に「書式」の設定で
追加されている)ものと思いますので、後者の方がクエリの実行速度は速いの
ではないかと思います。
(但し、今回Access2003で確認して問題なかったものの、以前97か2000で試した
際には、クエリでReplace関数のはエラーになったような気もするのが・・・(汗))
お礼が遅くなってすいません。おっしゃるとおりテキスト型です。以前のDBでは日付型になっていて、今回なぜテキスト型にしたのか明確な説明は無かったのですが今さら変更するのもややこしそうなのでこのまま使うしかありません。CStr(Date())に変えて少し早くなりました。データ量もかなり多いのでこのまま使おうと思います。ACCESS2000ではReplaceは未定義関数といわれましたので使えませんでした。
どうも有難うございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript gasについて 1 2022/05/31 21:51
- Access(アクセス) アクセスで教えてください。 クエリで2日前を抽出する計算式を 入力して表示させると ちゃんとyyyy 1 2023/06/08 21:05
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- Visual Basic(VBA) VBAで日付入力しているのですが 4 2023/03/02 11:25
- Excel(エクセル) エクセルの数式で教えてください。 2 2022/12/23 14:57
- Excel(エクセル) 「休日取得希望日」を申請したらシフト表に色付け 1 2022/04/17 14:22
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- UNIX・Linux cronの@rebootでのdateコマンドの実行につきまして 2 2023/06/11 16:23
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESSの時間帯の抽出について
-
PCゲームから音声ファイルを抽...
-
ACCESS クエリの抽出条件に他の...
-
アクセス・クエリの抽出条件(...
-
accessの日付フィールドから前...
-
エクセルのマクロで検索・抽出...
-
アクセスでの抽出方法(日付+時...
-
ACCESS抽出条件でデータ型が一...
-
クエリの進行状況を知りたい。
-
Accessで任意のテーブルのフィ...
-
access クエリの抽出条件を入れ...
-
ACCESS クエリで”1”でないもの...
-
Accessのクエリで、CStr関数を...
-
エクセルで条件付きの無作為抽出
-
Accessの抽出条件 特定の期間...
-
最大値以外の抽出方法
-
エクセル2003 条件抽出したデ...
-
ACCESS 「パラメータの入力」...
-
ACCESSのクエリで集計
-
Access:クエリの複数『or条件...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESS 「パラメータの入力」...
-
ACCESSのクエリで抽出条件「ま...
-
ACCESS クエリの抽出条件に他の...
-
ACCESSの時間帯の抽出について
-
アクセス・クエリの抽出条件(...
-
Access テーブルを分割してエク...
-
エクセルのマクロで検索・抽出...
-
accessの日付フィールドから前...
-
PCゲームから音声ファイルを抽...
-
最大値以外の抽出方法
-
access クエリの抽出条件を入れ...
-
アクセスでの抽出方法(日付+時...
-
Accessクエリーでチェックボッ...
-
クエリの進行状況を知りたい。
-
ACCESS クエリで”1”でないもの...
-
ACCESS クエリの抽出条件を動的...
-
ACCESSのクエリで集計
-
Accessで「式で型が一致しません...
-
元データから連続5日以上だった...
-
Access 2003 iif [日付フィール...
おすすめ情報