トピック このトピックに返信する
TOPIC 複数の検索条件でいずれかを含む検索
Posted by kama
at 2010/01/27(水) 13:04
分類: カスタマイズトラブル

はじめまして。

複数の検索条件に、なんらかのキーワードを入力し、
どちらか一方のキーワードが入っているデータが
あれば全て表示したいのですが、可能でしょうか。

例:
以下の検索条件があるとします。
・品名コードを調べる検索条件
・商品の色をチェックボックスで選択する
検索条件

品名コードに、”n”を入力します。
商品の色チェックボックスに青色をチェックします。
以上2つの条件で検索したときに、
両方、いずれかにマッチするデータが表示する

例えば、
商品の色は”赤”だが、
品名コードが”n-23”で”n”が付くので抽出される。
例えば、
品名コードが”a-50”だが、
商品の色は”青”なので抽出される。

ご教授ください。
宜しくお願い申し上げます。
トピック このトピックに返信する
レス表示 古い順 新しい順 | 3件のレス 1-3 表示中
RES レスメッセージ
Posted by Bear
at 2010/01/29(金) 15:17
Re:複数の検索条件でいずれかを含む検索
> No3756への引用返信
> はじめまして。
>
> 複数の検索条件に、なんらかのキーワードを入力し、
> どちらか一方のキーワードが入っているデータが
> あれば全て表示したいのですが、可能でしょうか。

こんにちは。
OR検索を行うとで可能かと思われます。
AmigoDatabaseは、検索条件に対しAND検索とOR検索を指定できます。

次はReadme.txtの抜粋です。
各検索条件毎に検索タイプを指定します。
<INPUT type="hidden" name="Type_1" value="Normal-or">のように
name="Type_検索条件番号" value="[一致タイプ]-[and,or指定]"の形式で設定します。

一致タイプはデータタイプがNumの場合は
More,Equal,Lessの3種類が指定できます。
More=以上(入力された数値以上の時に一致)
Equal=完全一致(入力された数値と完全一致の時に一致)
Less=以下(入力された数値以下の時に一致)

データタイプがKeyの場合はNormal,Equal,Head,Footが指定できます。
Normal=キーワードを含む時に一致
Equal=キーワードと完全一致の時に一致
Head=キーワードを頭文字に含む時に一致
Foot=キーワードを文末に含む時に一致

and,or指定は
and=全てを含む(全てに一致する)
or=いずれかを含む(いずれかに一致する)となります。

たとえば

<input type="text" name="S_1_Key_Sample">
<select name="Type_1">
<option vale="Normal-or">OR検索</option>
<option vale="Normal-and">AND検索</option>
</select>

などのようにするとANDとORを区別して検索できますね。
参考になればいいのですが。
Posted by kama
at 2010/01/29(金) 22:58
Re:複数の検索条件でいずれかを含む検索

お返信ありがとうございます。

ご教授いただいた記述で試したのですが、
当方が欲する検索結果で出力できませんでした。

amigo databaseをご利用されている
以下URLを例にご説明させていただきます。

http://www.kudou.info/sakedb/nsearch.html

「日本酒」を検索するサイトなのですが、
検索条件の一部に以下の2つがあります。

・日本酒銘柄
・都道府県

「日本酒銘柄」に”錦”という名前が付いているお酒と、
「都道府県」が”香川県”のお酒と
両方検索結果として出てくるイメージを
もっているのですが、
「該当するデータは見つかりません」
と表示されます。
実際は”錦”という銘柄の付くお酒は1件あり、
香川県産のお酒が10件あるので、
合計11件の検索結果を出したいと思っております。

大変お手数をおかけしますが、
宜しくお願い申し上げます。
Posted by Bear
at 2010/01/30(土) 14:24
Re:複数の検索条件でいずれかを含む検索
こんにちは。
当方でも色々テストしてみましたが、データ項目別でのデータ項目をまたぐType検索は出来ないようですね。
データ項目をまたぐ場合は、完全一致として検索されるようです。

この場合はMultiを使った検索でしか対応は出来ないかと存じます。

<input type="text" name="S_1_Key_Multi">
<select name="Type_1">
<option value="Normal-or" selected>いずれかを含む</option>
<option value="Normal-and">全てを含む</option>
<option value="Equal-or">完全一致する</option>
<option value="Head-or">いずれかを頭文字含む</option>
<option value="Foot-or">いずれかを文末に含む</option>
</select> に <select name="Not_1">
<option value="0" selected>該当する</option>
<option value="1">該当しない</option>
</select>
<input type="hidden" name="Target_1" value="SakeName,Ken">

以上のようにMulti検索を利用すればデータをまたぐType検索も可能です。
検索キーワードの入力は「錦 香川県」のように複数をスペースで区切り入力します。
「Target_1」にて検索するデータ項目を指定できます。
readme.txtに詳しく記載されていますのでそちらも参考にして下さい。
Access: 1,221,729
 
ソーシャルブックマーク: Yahoo!ブックマーク Google Bookmarks はてなブックマーク Livedoorクリップ @niftyクリップ FC2ブックマーク Buzzurl Delicious トピックイット newsing it!