我正在尝试使用术语过滤器过滤文档.我不知道如何在过滤器中引入通配符.我试过这样的事情:
"filter":{
"bool":{
"must":{
"terms":{
"wildcard" : {
"aircraft":[
"a380*"
]
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
但我得到了SearchParseException.有没有办法在过滤器框架中使用通配符?
我在我的项目中使用Room持久性数据库.我有一个表,其中有一个布尔值列,如0或1,现在我想要所有布尔值的计数,其值为true(或1).
我知道我可以通过使用where子句获取所有选定行的计数来使用select查询实现此目的!
但我不想使用选择查询与where子句为此,因为它将加载所有行,然后我将得到计数,但我想要计数而不加载任何行!建议其他简单的解决方案!谢谢!
database android boolean-operations booleanquery android-room
是否有可能结合起来query_string,并bool query在filter query?
例如 -
{
"filter": {
"query_string": {
"query": "field:text"
}
},
"bool": {
"should": {
"match": {
"field": "text"
}
}
}
}
Run Code Online (Sandbox Code Playgroud) 我正在寻找一个可以接受用户查询和文本的Java/Scala库,如果有匹配则返回.
我正在处理一个信息流,即:Twitter Stream,并且无法负担使用批处理过程,我需要实时评估每条推文,而不是通过Lucene RAMDisk对其进行索引并稍后查询.
可以使用ANTLR创建一个解析器/词法分析器,但这是常见的用法,我不相信之前没有人创建过lib.
来自TextQuery Ruby库的一些示例正是我所需要的:
TextQuery.new("'to be' OR NOT 'to_be'").match?("to be") # => true
TextQuery.new("-test").match?("some string of text") # => true
TextQuery.new("NOT test").match?("some string of text") # => true
TextQuery.new("a AND b").match?("b a") # => true
TextQuery.new("a AND b").match?("a c") # => false
q = TextQuery.new("a AND (b AND NOT (c OR d))")
q.match?("d a b") # => false
q.match?("b") # => false
q.match?("a b cdefg") # => true
TextQuery.new("a~").match?("adf") # => true
TextQuery.new("~a").match?("dfa") …Run Code Online (Sandbox Code Playgroud) 我有一个包含多个字段的索引,其中一个是字符串字段,我在其中存储产品的类别名称...例如"Electronics","Home","Garden"等
new StringField("category_name", categoryName, Field.Store.YES)); //categoryName is a value such as "Electronics"
Run Code Online (Sandbox Code Playgroud)
我正在执行布尔查询以按名称,价格和类别查找产品,但我不确定如何进行OR搜索,以便我可以同时查询两个类别.
我当前的查询如下所示:
String cat = "Electronics"
TermQuery catQuery = new TermQuery(new Term("category_name", cat));
bq.add(new BooleanClause(catQuery, BooleanClause.Occur.MUST)); // where "bq" is the boolean query I am adding to, I tried .SHOULD but that didn't help either
Run Code Online (Sandbox Code Playgroud)
这适用于一类搜索,但我不知道如何搜索"电子或家庭"这将是两个类别.
如何在Lucene 6.x中实例化BooleanQuery?如何使用布尔查询在其中添加其他查询?
在Lucene 4.x中,我们使用BooleanQuery如下:
BooleanQuery booleanQuery = new BooleanQuery();
booleanQuery.add(query1, BooleanClause.Occur.MUST);
booleanQuery.add(query2, BooleanClause.Occur.MUST);
Run Code Online (Sandbox Code Playgroud)
如何在Lucene 6中实现这一目标.
ES中Only match和bool必须匹配查询有什么区别?
首先,仅使用匹配查询
{
"query":{
"match":{
"address":"mill"
}
}
}
Run Code Online (Sandbox Code Playgroud)
二、使用复合查询
{
"query": {
"bool": {
"must": [
{ "match": { "address": "mill" } }
]
}
}
}
Run Code Online (Sandbox Code Playgroud)
你能告诉我一切吗?他们之间有什么区别?
我正在尝试实现一个未经过排名的布尔检索.为此,我需要构造一个树并执行DFS来检索文档.我有叶节点,但我很难构建树.
例如:query = OR(AND(玛丽亚莎拉波娃)网球)
结果:
OR
| |
AND tennis
| |
maria sharapova
我使用DFS遍历树并计算某些文档ID的布尔等价物,以从语料库中识别所需的文档.有人可以用python帮助我设计这个吗?我已解析查询并立即检索叶节点.
编辑:我是新来的,所以道歉是因为缺乏清晰度.我基本上试图建立一个非常天真的搜索引擎.因此,用户输入任何布尔查询,如:OR(AND(maria sharapova)tennis).我有一个维基百科文档集,根据您输入的查询显示给用户.
直到现在,我已经解析了查询以检索单个运算符(如OR,AND等).而且,个人搜索条件(玛丽亚,网球等).解析代码只是一个基本上将所有运算符和查询项组合为类型的函数.即(玛丽亚莎拉波娃),(网球),或,和.我以这种方式解析这个函数,以便自下而上创建一个树.现在,使用倒置列表作为网球,玛丽亚,莎拉波娃等相应的关键词,我使用倒排列表执行布尔运算,得到一定的"文档化".然后将此文档传递给API,然后API将检索正确的维基百科页面.
为了更详细地解释这个主题,请参阅本文档以获取有关我手头问题的更多信息:http: //www.ccs.neu.edu/home/jaa/CSG339.06F/Lectures/boolean.pdf
python algorithm information-retrieval search-engine booleanquery
我有一个倒排索引(作为字典),我想将布尔搜索查询作为输入来处理它并产生结果。
倒排索引是这样的:
{
Test : { FileName1: [213, 1889, 27564], FileName2: [133, 9992866, 27272781, 78676818], FileName3: [9211] },
Try : { FileName4 ...
.....
}
Run Code Online (Sandbox Code Playgroud)
现在,给定布尔搜索查询,我必须返回结果。
例子:
布尔搜索查询:test AND try
结果应该是所有带有单词test and try的文档。
布尔搜索查询:test OR try
结果应该是所有具有测试或尝试的文档。
布尔搜索查询:test AND NOT try
结果应该是所有经过测试但没有尝试的文档。
如何构建此搜索引擎来处理给定的布尔搜索查询?
提前致谢!
检查给定的pandas系列是否包含负值的最快方法是什么.
例如,对于s下面的系列,答案是True.
s = pd.Series([1,5,3,-1,7])
0 1
1 5
2 3
3 -1
4 7
dtype: int64
Run Code Online (Sandbox Code Playgroud) booleanquery ×10
java ×3
lucene ×3
python ×3
algorithm ×1
android ×1
android-room ×1
apache ×1
database ×1
pandas ×1
python-3.x ×1
query-string ×1
querydsl ×1
scala ×1
series ×1
textmatching ×1
wildcard ×1