我想按相同的类别和技术类型过滤数据。现在,我的查询如下生成:
{
"from": 0,"size": 10,"highlight": {
"pre_tags": [
"<b>"
],"post_tags": [
"</b>"
],"fields": {
"title": {}
}
},"aggs": {
"applied_filters": {
"nested": {
"path": "applied_filters"
},"aggs": {
"by_fid": {
"terms": {
"field": "applied_filters.fid"
}
}
}
}
},"query": {
"function_score": {
"functions": [],"query": {
"mlt": {
"fields": [
"str_BlogID","topic","fullText","authors","editors","issue","technologyTypeName","title^5","keywords^2"
],"like_text": "","ids": [
"5269"
]
}
},"boost_mode": "sum","max_boost": 100.0
}
}
}
5269
代表Blog ID。如果用户希望看到类似的博客,则应根据上述标准过滤数据。博客可以有多个类别,并且只有一种技术类型。
对于类别,如果Blog A包含类别C1,C2,C3,而Blog B包含类别C1,C2,C3,C4和C5。那么,博客B与博客A的博客类型相似。
有人可以帮我达到预期的效果吗?