我目前在Solr中有以下标签的文件
FirstName:一些名字 姓氏:某个名字
我想在所有文档中添加另一个标记Full Name,它将连接FirstName +" " +姓氏
有没有办法做到这一点(我不想使用复制字段,因为将来我会直接在全名中插入值
谢谢,
希蒙
答案 0 :(得分:1)
不确定为什么你不想使用copyfield,因为这正是它的用途。您可以通过schema.xml文件执行以下操作:
<field name="FullName" type="text" indexed="true" stored="true" multiValued="true"/>
<copyField source="FirstName" dest="FullName"/>
<copyField source="LastName" dest="FullName"/>
然后只需在不再需要时从架构中删除copyfield并重新索引您的集合。
如果你使用DIH,另一个选择是将名字和姓氏一起加入一个用空格分隔的字符串,然后将其插入你的FullName字段:
Schema.xml的:
<field name="FullName" type="text" indexed="true" stored="true" multiValued="true"/>
DB-数据-config.xml中
select table.FirstName + " " + table.LastName as 'dbFullName'
...
<field column="dbFullName" name="FullName" />