52 lines
1022 B
Plaintext
52 lines
1022 B
Plaintext
// This file is autogenerated, DO NOT EDIT
|
|
// Use `node scripts/generate-docs-examples.js` to generate the docs examples
|
|
|
|
[source, js]
|
|
----
|
|
const response = await client.index({
|
|
index: "exams",
|
|
refresh: "true",
|
|
document: {
|
|
grade: 100,
|
|
weight: [2, 3],
|
|
},
|
|
});
|
|
console.log(response);
|
|
|
|
const response1 = await client.index({
|
|
index: "exams",
|
|
refresh: "true",
|
|
document: {
|
|
grade: 80,
|
|
weight: 3,
|
|
},
|
|
});
|
|
console.log(response1);
|
|
|
|
const response2 = await client.search({
|
|
index: "exams",
|
|
filter_path: "aggregations",
|
|
size: 0,
|
|
runtime_mappings: {
|
|
"weight.combined": {
|
|
type: "double",
|
|
script:
|
|
"\n double s = 0;\n for (double w : doc['weight']) {\n s += w;\n }\n emit(s);\n ",
|
|
},
|
|
},
|
|
aggs: {
|
|
weighted_grade: {
|
|
weighted_avg: {
|
|
value: {
|
|
script: "doc.grade.value + 1",
|
|
},
|
|
weight: {
|
|
field: "weight.combined",
|
|
},
|
|
},
|
|
},
|
|
},
|
|
});
|
|
console.log(response2);
|
|
----
|