考虑以下文件:
{
"Title": "Western Europe"
}
我想对标题字段运行这样的搜索查询
我可以运行一个简单的匹配查询:
POST /_search
{
"query": {
"match": {
"Title": "Apple in Western Europe"
}
}
}
显然,无论我使用哪个搜索短语,它都会匹配并将其带回来。但是我想做一个查询,只有当标题字段短语与我的搜索查询匹配时,它才会将我的文档带回来。这可能吗?是否有任何附加参数?这似乎是短语匹配的相反情况。
所以在这种情况下,运行这个(带有附加参数)不会得分并带回我的文档。
POST /_search
{
"query": {
"match": {
"Title": "Apple in Eastern Europe"
}
}
}
tl;博士
如果文档的所有字段(我正在搜索的字段)标记都存在于我的搜索查询中,我如何编写一个查询来带回文档?例如,文档中的my字段仅包含这两个标记:
如果我的搜索短语是Lorem ipsum dolor sit amet,concetetur adipising elit abc xyz,那么文档就会被带回来。
如果它是Lorem ipsum dolor sit amet,consecetur adipiscing elit xyz,它不会被带回来。
我知道Stefan在评论中给出了一个简单有效的解决方案,但您可能还想将Span Queries视为仅供参考!!
我创建了示例映射、文档、查询和响应:
PUT my_span_index
{
"mappings": {
"properties": {
"Title":{
"type": "text"
}
}
}
}
POST my_span_index/_doc/1
{
"Title": "Western Europe"
}
POST my_span_index/_doc/2
{
"Title": "Eastern Europe"
}
//slop - distance between words Western and Europe here is 13
POST my_span_index/_doc/3
{
"Title": "As far as Western culture is America, we see gradually more and more of the same in Europe"
}
POST my_span_index/_search
{
"query": {
"span_near" : {
"clauses" : [
{ "span_term" : { "Title": "western" } },
{ "span_term" : { "Title": "europe" } }
],
"slop" : 12, <---- Distance Between Words
"in_order" : true <---- If order is important
}
}
}
请注意,我使用了Span附近
{
"took" : 1,
"timed_out" : false,
"_shards" : {
"total" : 1,
"successful" : 1,
"skipped" : 0,
"failed" : 0
},
"hits" : {
"total" : {
"value" : 2,
"relation" : "eq"
},
"max_score" : 0.5420371,
"hits" : [
{
"_index" : "my_span_index",
"_type" : "_doc",
"_id" : "1",
"_score" : 0.5420371,
"_source" : {
"Title" : "Western Europe"
}
},
{
"_index" : "my_span_index",
"_type" : "_doc",
"_id" : "3",
"_score" : 0.028773852,
"_source" : {
"Title" : "As far as Western culture is America, we see gradually more and more of the same in Europe"
}
}
]
}
}
请注意,在响应中也会返回id为3的文档,但是如果将slop更改为较小的值,则不会显示该文档。
痛苦的是,如果您的请求将有更多的令牌,您最终会在应用程序端编写/生成长查询。
希望我能帮忙!!
尝试使用可以帮助您的不同参数的“间隔查询”。
https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-intervals-query.html
您可以使用Percolator查询(ES文档):
query
:接受一个ES查询,后面有所有的力量标题
:元数据(可选)PUT /my_index
{
"mappings": {
"properties": {
"Title": {
"type": "text"
},
"query": {
"type": "percolator"
}
}
}
}
PUT /my_index/_doc/1
{
"query": {
"match_phrase": {
"Title": "Western Europe"
}
},
"Title": "Western Europe"
}
POST /my_index/_search
{
"query": {
"percolate": {
"field": "query",
"document": {
"Title": "Apple in Western Europe"
}
}
}
}
参考阅读:什么是反向Shell 这篇教程将会教你使用Python编写一个反向shell,首先我们先演示使用Python如何利用web服务器的功能,把文件从另一台主机传送过来。我们假设你有一台傀儡主机,你现在想下载傀儡机上面的的文件。那么你就可以使用shell(或meterpreter)去访问这台傀儡机,你可以通过一行Python代码把傀儡机建立成为一个web服务器,然后下载傀儡机上面的文件. 创建
问题内容: 我在寻找解决方案时遇到了麻烦。我正在尝试使用JS(或其他库)来制作它,以便当用户在鼠标滚轮上向下滚动时,页面以与通常相反的方式滚动。 基本上,我希望页面的底部首先显示,并且随着用户滚动,我希望屏幕的顶部向下显示。我能够找到的唯一示例是http://conduit.com/的右列。 我已经建立了一个JSFiddle并提供了一个示例来帮助对其进行可视化。我知道这可能与以下内容有关: 但老实
问题内容: 我在给像这样的物体 如何将字符串转换回对象? 问题答案: 您需要字符串。
什么是反向代理 反向代理(Reverse Proxy)方式是指用代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 举个例子,一个用户访问 http://www.example.com/readme,但是 www.example.com 上并不存在
卷积神经网络其实是神经网络特征学习的一个典型例子。传统的机器学习算法其实需要人工的提取特征,比如很厉害的SVM。而卷积神经网络利用模板算子的参数也用以学习这个特点,把特征也学习出来了。其实不同的模板算子本质上就是抽象了图像的不同方面的特征。比如提取边缘,提取梯度的算子。用很多卷积核去提取,那就是 提取了很多的特征。一旦把参数w,b训练出来,意味着特征和目标之间的函数就被确定。今天分享下CNN的关键
反向代理是一个 V2Ray 的附加功能,可以把服务器端的流量向客户端转发,即逆向流量转发。 反向代理功能在 V2Ray 4.0+ 可用。目前处于测试阶段,可能会有一些问题。 反向代理的大致工作原理如下: 假设在主机 A 中有一个网页服务器,这台主机没有公网 IP,无法在公网上直接访问。另有一台主机 B,它可以由公网访问。现在我们需要把 B 作为入口,把流量从 B 转发到 A。 在主机 A 中配置一