问题标签 [solr-query-syntax]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
57172 浏览

solr - Solr - 如何构造一个需要 NOT NULL Location 字段的查询

我有一个 Solr 索引,其中包含一组存储为Location类型的坐标;我想查询该字段具有非空值的文档。

对 Location 字段执行 NOT NULL 检查的查询语法是什么?

0 投票
1 回答
2940 浏览

java - SolrQuery 不返回少于 3 个字符的结果

我的代码如下:

问题是,当我有超过 3 个字符的查询时,这会返回给我响应,例如,查询字符串“che”会响应结果,但是查询字符串“ch”会不返回任何响应。有没有办法可以覆盖 Solr Query 的 3 个字符的最小长度。

是导致问题的下面的 xml,如果是,我可以使用 java 以编程方式覆盖它吗

提前感谢您的帮助。

谢谢并恭祝安康,

瓦布哈夫

0 投票
1 回答
4168 浏览

solr - 搜索 Solr 索引时避免重复

我的 Solr 索引有两种类型的用户(Type-A 和 Type-B),可以使用称为“类型”的字段来标识。但是用户有可能在两种类型(A 和 B)下都有条目。

例如,

我的目标是,

  • 当一个用户被搜索并且他只是A型时,他应该在结果中。

  • 当一个用户被搜索并且他只是B型时,他应该在结果中。

  • 当搜索用户(如 Jacob)并且他同时属于 A 类和 B 类时,结果中应该只有 A 类的文档。

我们如何通过查询来实现这一点?
提前致谢!

0 投票
2 回答
3431 浏览

solr - 如何强制执行完全匹配以获得最高优先级?

我正在索引和搜索 5 个字段,这些字段以各种方式进行标记/过滤。
但是,我希望在搜索时,如果我输入的查询与字段 1 中的值匹配,它将是我返回的最高结果。
我将如何定义:

  1. 如果 100% 匹配,则以这种方式查询该字段优先

在我的架构中,我有该字段

text_names 是:<fieldType name="text_names" class="solr.StrField" />

只有一个na_title="somthing is going here" 的条目。但是,当我搜索时, text_names:somthing is going on here我会得到很多结果。
需要指出的是,对于查询和索引操作,该字段上没有分析器或过滤器。

0 投票
1 回答
206 浏览

solr - 设置 Solr 并查询它

我是新手Solr

  1. 我找不到合适的文档来帮助我了解我需要添加的所有solrconfig.xml内容以及要删除的内容。

  2. 我的SolrDocument将包含id, field1, field2. 在 2 个字段中,我想更新其中的 1 个。我该怎么办?我尝试了一些东西,但它覆盖了整个文档。

  3. /update不管用。

我必须从一个类中添加documents和检索它们。Java

0 投票
2 回答
617 浏览

solr - 如果用户查询仅包含停用词,是否可以从 Solr 返回所有结果?

如果用户查询仅包含停用词,我希望 Solr 返回所有结果,例如 q=the,(默认情况下 Solr 返回 0 个结果)。我可以打开 Solr 配置中的任何标志,或者我可以使用任何 Solr 查询语法构造来实现此目的吗?

我真的不喜欢在客户端复制停用词逻辑并q=*:*在所有术语都是停用词时触发的想法。

0 投票
2 回答
172 浏览

solr - Querying partial phases with solr

I have a document with persons name and I would like to return those document based on partial names, for example:

Querying: "Joseph Gar*"

Should return

How to make that query using solr?

I have tried:

0 投票
1 回答
115 浏览

search - 通过搜索未找到公共 Github 存储库

使用以下搜索查询...

https://github.com/search?q=repo%3AOpeningDesign%2FOpeningDesign+GET&p=1&ref=searchbar&type=Code&l=

..在这个公共回购:https ://github.com/OpeningDesign/OpeningDesign

什么都没有出现。

我错过了什么吗?

0 投票
2 回答
1604 浏览

solr - Solr 4.0,TextField 查询给出 NullPointerException

我有我Solr schema喜欢的领域-

description字段具有某些文档的值,而其余文档则没有数据。当该字段没有数据时,我没有明确设置任何内容,description因为它不是一个required字段。

问题是当我使用 - 查询时description:*。我得到一个NullPointerException.

我没有更改schema. 同样,当我查询description:abc它时,它仍然适用,description:*并且description:abc*它给出了一个NullPointerException.

  • 这是正确的行为吗?
  • text当我们不必设置时,是否需要为字段赋予“”值?

例外 -

0 投票
1 回答
540 浏览

solr - 如何在单个查询中对两个方面查询的结果进行分组..?

我有一组文档,其中包含发件人邮件 ID 和收件人邮件 ID。

当我使用诸如facet.field=senderemailid&facet.limit=10&facet.offset=0. 这样我就可以获得相应邮件ID发送的邮件总数

结果是

<int name="xxx@e.com" > 157 <int>

<int name="x11@e.com" > 141 <int>

<int name="x22@e.com" > 32 <int>


同样,当我使用 时facet.field=recipientmailid&facet.limit=10&facet.offset=0,我可以获得相应邮件 ID 收到的邮件总数。

结果是

<int name="x1x@e.com" > 4​​1 <int>

<int name="x22@e.com" > 132 <int>

<int name="x2y@e.com" > 92 <int>

一旦我得到结果,我使用java代码对结果进行分组,每个电子邮件ID收到多少封电子邮件并发送多少封电子邮件。这样我无法实现分页。因为两个结果在某些电子邮件ID上不同。

我的期望是,

<int name="x22@e.com" >

<int name="x22@e.com" >

因此,我可以一口气收到发送的电子邮件和收到的电子邮件计数。我不需要使用 java 代码对结果进行分组。

solr 中是否存在将结果分组到 solr 本身的任何方法,这样我就可以避免 java 代码对结果进行分组,并且可以实现分页

[注意:recipientmailid 和 senderemailid 都是多值的。如果以后有需要我可以将 senderemailid 更改为单值。但是收件人邮件 ID 应该是多值的。]