Ich lerne elastische Suche und möchte verschiedene Werte zählen. Bisher kann ich Werte zählen, aber nicht eindeutig. HierZählen Sie verschiedene Werte mit elasticsearch
ist die Beispieldaten:
curl http://localhost:9200/store/item/ -XPOST -d '{
"RestaurantId": 2,
"RestaurantName": "Restaurant Brian",
"DateTime": "2013-08-16T15:13:47.4833748+01:00"
}'
curl http://localhost:9200/store/item/ -XPOST -d '{
"RestaurantId": 1,
"RestaurantName": "Restaurant Cecil",
"DateTime": "2013-08-16T15:13:47.4833748+01:00"
}'
curl http://localhost:9200/store/item/ -XPOST -d '{
"RestaurantId": 1,
"RestaurantName": "Restaurant Cecil",
"DateTime": "2013-08-16T15:13:47.4833748+01:00"
}'
Und was habe ich versucht, so weit:
curl -XPOST "http://localhost:9200/store/item/_search" -d '{
"size": 0,
"aggs": {
"item": {
"terms": {
"field": "RestaurantName"
}
}
}
}'
Ausgang:
{
"took": 0,
"timed_out": false,
"_shards": {
"total": 5,
"successful": 5,
"failed": 0
},
"hits": {
"total": 3,
"max_score": 0.0,
"hits": []
},
"aggregations": {
"item": {
"buckets": [
{
"key": "restaurant",
"doc_count": 3
},
{
"key": "cecil",
"doc_count": 2
},
{
"key": "brian",
"doc_count": 1
}
]
}
}
}
Wie kann ich Zahl von cecil
als 1 erhalten statt von 2
Ich habe sogar versucht: curl -XPOST "http: // localhost: 9200/speichern/item/_search" -d '{"size": 0, "aggs": {"item": {"cardinality": { "field": "RestaurantName"}}}} aber keine eindeutige Anzahl erhalten – Developer
Sollte Curl -XGET sein? – c24b
und ist es in Ordnung, das Aggregat als Element umzubenennen? – c24b