• ベストアンサー

アクセス クエリでの関数について

テーブルのフィールド1にテキスト形式で クダモノリンゴ クダモノオレンジ などが入っています。 クエリで 区別:IIF([フィールド1]="クダモノリンゴ",1,2) という感じで式を入れたのですが 結果はすべて2が表示されます。 別テーブルを作って フィールド1にクダモノリンゴなどの項目(頭に必ずクダモノが付きます) フィールド2に1や2などの種類別の値を入れてクエリでリレーションで関連づけても空白が返されます。 どこがおかしいのかまったくわからず困っています。アドバイスお願いします。

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

  • ベストアンサー
  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.2

区別:IIF([フィールド1]="クダモノリンゴ",1,2) で間違いありません。 実際のクエリのSQL文と 1 になるはずなのに 2 になってしまうフィールドの実際の値を ここにコピーペーストしてみてください。 また、"クダモノリンゴ" というように一つのフィールドに収めていては 後々の処理速度やクエリなどで問題となるかと思います。 品種   品名 クダモノ リンゴ ヤサイ  ハクサイ のようにフィールドを分けた方が宜しいかと。

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

その他の回答 (1)

noname#192382
noname#192382
回答No.1

クエリーに式を書き込むときにビルドを使ってみてください。したの式では正しい答えが出ました。 区別: IIf([テーブル2]![フィールド1]="クダモノリンゴ",1,2)

noname#234922
質問者

お礼

回答ありがとうございました。 テーブルの値の先頭に半角スペースが入っていたのを見落としていました<(_ _)>

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

関連するQ&A