Access 2003です。
[Start Date], [End Date]を入力するフォームで日付が入力されていなければ、
iif([Start Date] is null,<[End Date],>[Start Date])
のようにクエリ条件を設定したいのですが、
iif [Start Date] is null
を使うと、続く条件の中で<>がうまく働かないという現象が起きます。
(クエリでなにも抽出されない)
iif([Start Date] is nullの条件を入れなければ(つまり[Start Date],[End Date]はブランクにならないという前提ならば)
1. >[Start Date]
2. <[End Date]
3. Between [Start Date] And [End Date]
などどれも問題なく動きますし、
iif([Start Date] is null~の条件を入れても続く条件の中で<>を使わなければ
iif([Start Date] is null,[End Date],[Start Date])
はちゃんと動きます。
どうしてこのような現象が起こるのか、また回避する方法をご存知のかたがいらっしゃいましたら、どうぞご教示ください。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
回避方法については回答出てますので、どうしてこのような現象が起こるのか、について。
クエリのデザインビューの抽出条件では、式の左辺を省略しますが、実際のSQL文に直した場合、自動的に左辺が追加されます。
例えば、あるフィールド([A]とします)の条件が下記だった場合、
>[Start Date]
実際のSQL文での条件は、左辺が追加され、下記の様になります。
WHERE [A] > [Start Date]
抽出条件が質問の式だった場合、
iif([Start Date] is null,<[End Date],>[Start Date])
実際の条件式は下記の様になります。
WHERE [A]=iif([Start Date] is null,[A]<[End Date],[A]>[Start Date])
[Start Date]がnullだった場合、
WHERE [A]=([A]<[End Date])
と評価され、期待通りの結果とはなりません。
クエリのデザインビューは便利ですが、万能ではありません。
(全てのSQL文を表現できる訳ではない)
クエリの実体はSQL文です。複雑なクエリの場合、SQL文についての知識が必要になってきます。
興味があれば、SQL文について勉強してみて下さい。
はー、なるほど。
確かにSQLでみるとおっしゃるようなクエリになってます。
デザインビューは万能ではないんですね。
とても参考になりましたし、これから自分でも調べてみようと思います。
たいへん分かりやすい解説どうもありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- Visual Basic(VBA) マクロについて教えてください。 1 2023/06/06 00:57
- 英語 イベントの本番開始前の受付開始時間は英語でなんといいますか? 1 2023/03/26 15:15
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- 英語 to date 2 2023/05/23 23:22
- UNIX・Linux cronの@rebootでのdateコマンドの実行につきまして 2 2023/06/11 16:23
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Visual Basic(VBA) マクロについて教えてください。 4 2023/06/06 09:06
- Excel(エクセル) マクロで行を追加、削除すると行位置がずれますが、解決方法はありませんか?。 5 2022/05/28 16:03
- Visual Basic(VBA) 【VBA】先月分の取得ができない理由が分かりません。 2 2022/04/24 11:16
このQ&Aを見た人はこんなQ&Aも見ています
-
好きな人を振り向かせるためにしたこと
大好きな人と会話のきっかけを少しでも作りたい、意識してもらいたい…! 振り向かせるためにどんなことをしたことがありますか?
-
歳とったな〜〜と思ったことは?
歳とったな〜〜〜、老いたな〜〜と思った具体的な瞬間はありますか?
-
モテ期を経験した方いらっしゃいますか?
一生に一度はモテ期があるといいますが、みなさんどうですか? いまがそう! という方も、「思い返せばこの頃だったなぁ」という方も、よかったら教えて下さい。
-
【選手権お題その3】この画像で一言【大喜利】
とあるワンシーンを切り取った画像。この画像で一言、お願いします!
-
【選手権お題その2】この漫画の2コマ目を考えてください
サッカーのワンシーンを切り取った1コマ目。果たして2コマ目にはどんな展開になるのか教えてください。
-
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
IIF関数の使い方
Visual Basic(VBA)
-
クエリで日付型のIIF関数の使用
Access(アクセス)
-
-
4
Date型にNULLをセットしたい VB2008+SQLServer2008
SQL Server
-
5
ACCESSで空白のデーターをクエリで判定/識別する方法を教えてくださ
Access(アクセス)
-
6
YES/NO型の値
Excel(エクセル)
-
7
最新日のデータのみ抽出するクエリを教えて下さい
Access(アクセス)
-
8
アクセス97のVBAで日付項目をヌルにする方法
その他(データベース)
-
9
「パラメータが少なすぎます。3を指定してください。」って???
Access(アクセス)
-
10
ACCESSでの文字と数字の結合について
Access(アクセス)
-
11
Accessを使って日付を比較したい
その他(Microsoft Office)
-
12
ACCESSユニオンクエリでORDER BYエラー
Access(アクセス)
-
13
サブフォームを非表示させる方法を教えて下さい
その他(Microsoft Office)
-
14
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
15
Accessを開きなおすとテキストボックスの値がエラー#Name?になる
その他(データベース)
-
16
access別のテーブルを参照してテキストボックスに値を表示、編集したい
Access(アクセス)
-
17
前のレコードの値を自動で入れたい
PowerPoint(パワーポイント)
-
18
パラメータが少なすぎます。1を指定して下さい。""
Excel(エクセル)
-
19
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
20
Accessで、フォームからフォームへ値を引き継ぐやり方
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【選手権お題その3】この画像で一言【大喜利】
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・ちょっと先の未来クイズ第6問
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ACCESS クエリの抽出条件に他の...
-
アクセス2000で、DBの0と空白以...
-
エクセルのマクロで検索・抽出...
-
ACCESS 「パラメータの入力」...
-
ACCESSのクエリで抽出条件「ま...
-
ACCESSの時間帯の抽出について
-
クエリで不等号を含んだ条件式...
-
ACCESS クエリの抽出条件を動的...
-
アクセスの抽出条件設定について
-
Access:クエリの複数『or条件...
-
元データから連続5日以上だった...
-
ACCESSのクエリで集計
-
アクセス・クエリの抽出条件(...
-
最大値以外の抽出方法
-
ExcelでハイパーリンクのURLだ...
-
accessの日付フィールドから前...
-
ACCESS クエリで”1”でないもの...
-
日付型のフィールドに空白を入...
-
SQL文で パラメータが少なすぎ...
-
差込印刷での全角表示について...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESS クエリの抽出条件に他の...
-
ACCESSのクエリで抽出条件「ま...
-
ACCESS 「パラメータの入力」...
-
ACCESSの時間帯の抽出について
-
Access テーブルを分割してエク...
-
accessの日付フィールドから前...
-
PCゲームから音声ファイルを抽...
-
アクセス・クエリの抽出条件(...
-
エクセルのマクロで検索・抽出...
-
アクセス2000で、DBの0と空白以...
-
ACCESS クエリの抽出条件を動的...
-
Accessクエリーでチェックボッ...
-
元データから連続5日以上だった...
-
ACCESSのクエリで集計
-
アクセスでの抽出方法(日付+時...
-
最大値以外の抽出方法
-
access クエリの抽出条件を入れ...
-
クエリの進行状況を知りたい。
-
ACCESS クエリで”1”でないもの...
-
Accessで「式で型が一致しません...
おすすめ情報