2023年11月27日月曜日

accessのクエリで特定の文字列を含むか否かで、例えば分類という列にその区別を示す文字列を設定する方法

 accessのクエリで値に応じて、特定の文字列、例えば分類を示すコードを設定した列を作りたい。どうすればいいのか?
例えば、商品名というフィールドに「特別」という文字列が含まれている場合は、分類に「特別」を、そうでなければ「普通」を設定するケースを考えてみる。
新しい列のフィールド名に分類:IIF([商品名] like "*特別*","特別",”普通") と書けばよい。
IIFという関数は、フィールドの値を判定し、TrueかFalseかで処理を分けることができるのだ。
 このIIFの書き方を覚えると、色々と応用できるはずだ。
分類:IIF([商品名] like "*特別*","特別",IIF([商品名] like "*限定*","限定",”普通"))とすれば、限定という分類を簡単に増やすことができる。かっこの数に注意が必要だ。
 歳をとると、こんなテクニックが簡単に出てこなくなる。そのためのメモだ。