本文共 2128 字,大约阅读时间需要 7 分钟。
用most_fields策略,去实现cross-fields搜索 问题:
PUT /forum/_mapping/article{ "properties": { "new_author_first_name": { "type": "string", "copy_to": "new_author_full_name" }, "new_author_last_name": { "type": "string", "copy_to": "new_author_full_name" }, "new_author_full_name": { "type": "string" } }}
用了这个copy_to语法之后,就可以将多个字段的值拷贝到一个字段中,并建立倒排索引
POST /forum/article/_bulk{ "update": { "_id": "1"} }{ "doc" : { "new_author_first_name" : "Peter", "new_author_last_name" : "Smith"} } --> Peter Smith{ "update": { "_id": "2"} } { "doc" : { "new_author_first_name" : "Smith", "new_author_last_name" : "Williams"} } --> Smith Williams{ "update": { "_id": "3"} }{ "doc" : { "new_author_first_name" : "Jack", "new_author_last_name" : "Ma"} } --> Jack Ma{ "update": { "_id": "4"} }{ "doc" : { "new_author_first_name" : "Robbin", "new_author_last_name" : "Li"} } --> Robbin Li{ "update": { "_id": "5"} }{ "doc" : { "new_author_first_name" : "Tonny", "new_author_last_name" : "Peter Smith"} } --> Tonny Peter Smith
查询:
GET /forum/article/_search{ "query": { "match": { "new_author_full_name": "Peter Smith" } }}
转载地址:http://ieonn.baihongyu.com/