2016-05-03 15 views
0

2つのフィールドが等しい場合は、solrの2つのカラムを比較して、trueまたはelse falseを表示します。私は文書内の別のフィールドを比較するがSolrのいずれかでサポートされていない知っているあたりとしてSolrを使用して2つの列を比較する方法は?

CASE WHEN o_is_follow = o_follow_id THEN 'TRUE' ELSE 'FALSE'.

+0

インデックス作成中または検索中にどこを比較するのですか? –

+0

検索中... – user2707767

答えて

0

私はそれがindexingの間に別のフィールドを作成する1つのオプションによって達成できると思います。

別のフィールドを持つことができます(boolean)。このフィールドはbooleanタイプとし、検索中に使用することができます。 o_is_follow_presentフィールドを作成し、indexingの間に一致するドキュメントの場合はtrueに設定します。

フィルタ条件の1つと同じフィールドを使用してください。

+0

任意の例またはリンクを転送してください。 – user2707767

+0

これはあなたのために動作するかどうかを確認できますかhttps://wiki.apache.org/solr/FunctionQuery#Boolean_Functions ...これはsolr4に追加されました。 .... https://cwiki.apache.org/confluence/display/solr/Function+Queries –

+0

like..exists(myField)は、myFieldに値がある場合はtrueを返します。 –

関連する問題