搜索的时候根据条件去重(返回重复数据的任意一条)
比如下面的两条数据
{
"title":"test1",
"content":"hello world!"
}
{
"title":"test1",
"content":"The world is beautiful"
}
搜索条件:
"query": {
"match": {
"content": "world"
}
}
重复判定条件:title相同视为重复(每次搜索重复判定条件可能变化)
返回结果要求:只返回其中任意一条记录(搜索匹配了两条记录,但两条记录title相同,所以要求只返回其一一条记录)
请问各位大神ElasticSearch自身支持这样的功能吗?如果自身不支持,有没有其他实现该功能的思路?
比如下面的两条数据
{
"title":"test1",
"content":"hello world!"
}
{
"title":"test1",
"content":"The world is beautiful"
}
搜索条件:
"query": {
"match": {
"content": "world"
}
}
重复判定条件:title相同视为重复(每次搜索重复判定条件可能变化)
返回结果要求:只返回其中任意一条记录(搜索匹配了两条记录,但两条记录title相同,所以要求只返回其一一条记录)
请问各位大神ElasticSearch自身支持这样的功能吗?如果自身不支持,有没有其他实现该功能的思路?
5 个回复
wzdxt
赞同来自: ventus
medcl - 今晚打老虎。
赞同来自: laoyang360
wntp - 80后IT♂
赞同来自:
phantom - you know, for search
赞同来自:
"titleFacet": {
"terms": {
"field": "title"
}
}
}
使用切面看看能不能解决问题呢
nate
赞同来自: