您的第一个查询实际上不是有效的JSON对象,因为您两次使用相同的字段名称。
您可以使用布尔必须查询来匹配两个短语:
PUT phrase/doc/1{ "text": "St Peter Fm some other text Cape Basin"}GET phrase/_search{ "query": { "bool": { "must": [ {"match_phrase": {"text": "St Peter Fm"}}, {"match_phrase": {"text": "Cape Basin"}} ] } }}


