我有一个存储课程详细信息的索引(为了简洁起见,我截断了一些属性):
{
"settings": {
"index": {
"number_of_replicas": "1",
"number_of_shards": "1"
}
},
"aliases": {
"course": {
}
},
"mappings": {
"properties": {
"name": {
"type": "text"
},
"id": {
"type": "integer"
},
"max_per_user": {
"type": "integer"
},
"event_user_id": {
"type": "integer"
},
"event_current_count": {
"type": "integer"
},
"course_event": {
"type": "join",
"relations": {
"course": "event"
}
}
}
}
}
这里的max\ u per\ u user是用户可以完成课程的次数。一个用户可以多次通过一个课程,但每个用户最多只能通过一个课程。事件\当前\计数跟踪用户完成课程的次数。父文档将有字段-name、id和max\u per\u user。子文档将具有event\u user\u id和event\u current\u count的值。如何构造搜索查询以获取给定用户id的所有父文档(即课程) event_current_count<max_per_user
. 基本上,我有一个用户id,对于该用户,我希望找到所有用户仍有资格查看的课程,因为event\u current\u count<max\u per\u user
暂无答案!
目前还没有任何答案,快来回答吧!