SolrのDB列から複数フィールドへのマッピング
-
23-12-2019 - |
質問
MySQLデータベースの1列からSOLRの複数の列にマップしたい。DBテーブルが車であるとします、ここでmy data-config.xmlファイル:
<dataConfig>
<document name="car">
<entity name="car" query="select * from cars" transformer="TemplateTransformer">
<field column="id" name="id" template="Car ${car.id}"/>
<field column="id" name="id_ss" />
</entity>
</document>
</dataConfig>
.
Solr Schemaでは、次の形式の2つのフィールドがあります。
id: with format "Car {id from db}"
id_ss: with format "{id from db}"
.
しかし私がTempate Transformerを使用した後、私のデータはこのようなインデックスです(id_ssフィールドの上にテンプレートトランスフォーマーを使用していなくても):
id: "Car {id from db}"
id_ss: "Car {id from db}"
.
私はどのように私はそれを望むように働くことができますか?
解決
これを行う:
<entity name="car" query="select id as id_ss, concat('Car ', id) as id from cars">
<field column="id" name="id" template="Car ${car.id}"/>
<field column="id_ss" name="id_ss" />
. 所属していません StackOverflow