parent
2b61b004c4
commit
f5366da0bf
125
README.md
125
README.md
|
@ -13,6 +13,131 @@ In order to install the plugin, simply run: `bin/plugin -install elasticsearch/e
|
|||
| 2.0.0-SNAPSHOT | 1.0.0.RC1 -> master | 1.7R4 | XXXX-XX-XX |
|
||||
| 2.0.0.RC1 | 1.0.0.RC1 -> master | 1.7R4 | 2014-01-15 |
|
||||
|
||||
Using javascript with function_score
|
||||
------------------------------------
|
||||
|
||||
Let's say you want to use `function_score` API using `javascript`. Here is
|
||||
a way of doing it:
|
||||
|
||||
```sh
|
||||
curl -XDELETE "http://localhost:9200/test"
|
||||
|
||||
curl -XPUT "http://localhost:9200/test/doc/1" -d '{
|
||||
"num": 1.0
|
||||
}'
|
||||
|
||||
curl -XPUT "http://localhost:9200/test/doc/2?refresh" -d '{
|
||||
"num": 2.0
|
||||
}'
|
||||
|
||||
curl -XGET "http://localhost:9200/test/_search?pretty" -d '
|
||||
{
|
||||
"query": {
|
||||
"function_score": {
|
||||
"script_score": {
|
||||
"script": "doc[\"num\"].value",
|
||||
"lang": "javascript"
|
||||
}
|
||||
}
|
||||
}
|
||||
}'
|
||||
```
|
||||
|
||||
gives
|
||||
|
||||
```javascript
|
||||
{
|
||||
// ...
|
||||
"hits": {
|
||||
"total": 2,
|
||||
"max_score": 4,
|
||||
"hits": [
|
||||
{
|
||||
// ...
|
||||
"_score": 4
|
||||
},
|
||||
{
|
||||
// ...
|
||||
"_score": 1
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Using javascript with script_fields
|
||||
-----------------------------------
|
||||
|
||||
```sh
|
||||
curl -XDELETE "http://localhost:9200/test"
|
||||
|
||||
curl -XPUT "http://localhost:9200/test/doc/1?refresh" -d'
|
||||
{
|
||||
"obj1": {
|
||||
"test": "something"
|
||||
},
|
||||
"obj2": {
|
||||
"arr2": [ "arr_value1", "arr_value2" ]
|
||||
}
|
||||
}'
|
||||
|
||||
curl -XGET "http://localhost:9200/test/_search" -d'
|
||||
{
|
||||
"script_fields": {
|
||||
"s_obj1": {
|
||||
"script": "_source.obj1", "lang": "js"
|
||||
},
|
||||
"s_obj1_test": {
|
||||
"script": "_source.obj1.test", "lang": "js"
|
||||
},
|
||||
"s_obj2": {
|
||||
"script": "_source.obj2", "lang": "js"
|
||||
},
|
||||
"s_obj2_arr2": {
|
||||
"script": "_source.obj2.arr2", "lang": "js"
|
||||
}
|
||||
}
|
||||
}'
|
||||
```
|
||||
|
||||
gives
|
||||
|
||||
```javascript
|
||||
{
|
||||
// ...
|
||||
"hits": [
|
||||
{
|
||||
// ...
|
||||
"fields": {
|
||||
"s_obj2_arr2": [
|
||||
[
|
||||
"arr_value1",
|
||||
"arr_value2"
|
||||
]
|
||||
],
|
||||
"s_obj1_test": [
|
||||
"something"
|
||||
],
|
||||
"s_obj2": [
|
||||
{
|
||||
"arr2": [
|
||||
"arr_value1",
|
||||
"arr_value2"
|
||||
]
|
||||
}
|
||||
],
|
||||
"s_obj1": [
|
||||
{
|
||||
"test": "something"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
License
|
||||
-------
|
||||
|
||||
|
|
Loading…
Reference in New Issue