我尝试使用solr wiki中的this示例来建模我的数据库。
我有一个名为item的表和一个名为feature,featureName,description
的表这是更新的xml(添加的featureName)
<dataConfig>
<dataSource driver="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:/temp/example/ex" user="sa" />
<document>
<entity name="item" query="select * from item">
<entity name="feature" query="select description, featureName as features from feature where item_id='${item.ID}'"/>
</entity>
</document>
现在我在xml元素中得到两个列表
<doc>
<arr name="featureName">
<str>number of miles in every direction the universal cataclysm was gathering</str>
<str>All around the Restaurant people and things relaxed and chatted. The</str>
<str>- Do we have... - he put up a hand to hold back the cheers, - Do we</str>
</arr>
<arr name="description">
<str>to a stupefying climax. Glancing at his watch, Max returned to the stage</str>
<str>air was filled with talk of this and that, and with the mingled scents of</str>
<str>have a party here from the Zansellquasure Flamarion Bridge Club from</str>
</arr>
</doc>
但我想一起看清单(使用xml属性),这样我就不必加入值了。
有可能吗?
答案 0 :(得分:1)
我想建议使用ScriptTransformer,它可让您根据需要灵活地更改数据,但由于它在行级别工作,因此无法在您的情况下使用。
您始终可以在SQL(example)中为字符串连接定义聚合函数,但是您可能会遇到性能问题。
如果您使用http/xml
数据源,解决方案就是使用flatten
属性。
然而,即使您最终使用多值字段,搜索功能也会按预期工作。缺点是在客户端,你将在表示层之前连接它们,如果你使用某种分页,这不是一个真正的问题。