1

Solr 上的索引数据包含一些具有空值的字段。当我运行q=*:*它时,它不包括具有空值的字段。查询时我需要传递什么参数以获取结果中具有空值的字段。

编辑:我正在使用 csv 文件索引数据,文件中的条目如下:

id, dob, name
1,,name1
2,,name2

现在,当我搜索前 10 条记录时,我只得到两个字段。即使没有为此存储任何值,我也想获取所有字段。

4

4 回答 4

1

如果一个项目没有一条数据,则 solr 不会存储该字段。您应该能够通过设置字段属性 required="True" default="" 来强制存储空字符串。

于 2016-10-11T02:01:04.173 回答
0

使用查询添加wt=csv,您可以导出格式良好的 CSV 文件

指定您需要使用的字段fl=

例子: select?fl=id,foo,bar&indent=on&q=field:value&stored=true&rows=1000&start=0&wt=json

于 2019-07-15T13:30:20.730 回答
0

字段应该有stored="true"

交叉检查有关dob字段的 schema.xml 文件。它应该存储=“真”

<field name="dob" type="text_general" indexed="true" stored="true"/>

重新索引文档并再次查询,它可以工作。

希望这有帮助

于 2016-10-05T10:33:33.397 回答
0

你是什​​么意思空字段?这些字段是否设置为indexed=true?当您索引这些字段时,您是否将空格设置为数据?看起来你甚至没有向这个变量发送模板空白数据,这就是它发生的原因。例如,如果我以这种格式发送数据{"id":"change.me","title":" "},我的标题字段为空,它会被索引。但如果你尝试发送这样的数据{"id":"change.me","title":},它将在 solr 中发送错误。

于 2016-10-05T08:14:54.387 回答