[英]ElasticSearch how to get docs with 10 or more fields in them?
我想獲取所有包含10個或更多字段的文檔。 我猜是這樣的:
{
"query": {
"range": {
"fields": {
"gt": 1000
}
}
}
}
您可以做的是像這樣運行腳本查詢
{
"query": {
"script": {
"script": {
"source": "params._source.size() >= 10"
}
}
}
}
但是,請注意,這取決於您擁有的文檔數量和支持群集的硬件,這可能會對群集的性能產生負面影響。
更好的主意是添加另一個整數字段,該整數字段包含文檔包含的字段數,因此您可以像在問題中一樣簡單地對其進行range
查詢。
作為_source字段的每個文檔,您可以那樣做,或者無法基於字段數獲得結果。
https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-source-field.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.