アプリ版:「スタンプのみでお礼する」機能のリリースについて

ACCESSの超初心者です。

選択クエリで、80件ほどの抽出条件を部分一致で
設定しています。(Likeを使用)

例えばこんな感じです。
 フィールド
  aaa1
  bbb52
  aaa33
  aac8
  bba35
  bba115
 
 抽出条件 Like "aaa*" Or Like "bba*"
→抽出結果 aaa1,aaa33,bba35,bba115

今後も条件が増えていく予定なので、別の
良い方法がないかと思っています。
(できるかどうかわかりませんが、
別にテーブルを作り、その一覧内の文字が
含まれるレコードのみを抽出)

皆さんのお知恵をお貸しいただけないでしょうか。

宜しくお願いします。

A 回答 (1件)

検索対象の文字列をテーブルで扱うのであれば以下のような感じになるでしょうか。



検索されるテーブル(名前:T1)
 フィールド(名前:FN)
  aaa1
  bbb52
  aaa33
  aac8
  bba35
  bba115

検索する文字列テーブル(名前:TS)
 フィールド(名前:FN)
  aaa
  bba


SELECT T1.FN
FROM T1, TS
WHERE ((T1.FN) Like [TS].[FN] & "*");



検索する文字列テーブルに細工(曖昧方向を追加)
検索する文字列テーブル(名前:TS)
 フィールド(名前:FN)/ 曖昧方向(名前:SP)
  aaa            1
  bba            1

曖昧方向の意味
=1:後方曖昧 (例:aaa*)
=2:前後曖昧 (例:*aaa*)
=3:前方曖昧 (例:*aaa)


SELECT T1.FN
FROM T1, TS
WHERE ((T1.FN) Like Choose([TS].[SP],"","*","*") & [TS].[FN] & Choose([TS].[SP],"*","*",""));
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます。

おかげさまで、無事クエリを作成できました。
どうやったらいいのか分からずに困っていたので
本当に助かりました。

ありがとうございました。

お礼日時:2009/02/15 18:23

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!