Tôi muốn đếm số lượng tài liệu được trả lại do truy vấn có giới hạn kích thước. Ví dụ, tôi chạy sau truy vấn:Số lượng tìm kiếm được trả về kết quả là
curl -XGET http://localhost:9200/logs_-*/a_logs/_search?pretty=true -d '
{
"query" : {
"match_all" : { }
},
"size" : 5,
"from" : 8318
}'
và tôi nhận được:
{
"took" : 5,
"timed_out" : false,
"_shards" : {
"total" : 159,
"successful" : 159,
"failed" : 0
},
"hits" : {
"total" : 8319,
"max_score" : 1.0,
"hits" : [ {
....
Tổng số tài liệu phù hợp với truy vấn của tôi là 8319, nhưng tôi lấy tại max 5. Chỉ có 1 tài liệu được trả lại kể từ khi tôi truy vấn " từ "8318.
Trong phản hồi, tôi không biết có bao nhiêu tài liệu được trả lại. Tôi muốn viết một truy vấn sao cho số tài liệu được trả về cũng có mặt trong một số trường. Có lẽ một số khía cạnh có thể giúp đỡ, nhưng tôi không thể tìm ra. Giúp đỡ một cách tử tế.
Bạn không thể đếm số đối tượng trong mảng truy cập ở phía máy khách? – javanna
Đó là một hoạt động tốn kém. Tôi muốn biết số trước khi tôi bắt đầu đếm/xử lý các đối tượng riêng lẻ. –
Không có cách nào để lấy lại thông tin đó. Ý tưởng là nếu bạn đã phân tích cú pháp câu trả lời json thì không phải là vấn đề lớn để đọc độ dài của mảng đó, nhưng nếu bạn có một đối tượng json lớn và bạn đọc nó bằng trình phân tích cú pháp kéo, thì đó là một câu chuyện hoàn toàn khác . – javanna