- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我没有 Java 经验,我对 elasticsearch painless 脚本语言有疑问。 (无痛这个名字选的不好)。
对于以下代码,我得到了错误:
{"lang": "painless",
"inline": "float price = doc['newPrice'] > 0.0 ? doc['price'] / doc['newPrice'] : 0; _score * params.constant * price",
"params": {"constant": 1.2}}}}
Cannot apply [>] operation to types [org.elasticsearch.index.fielddata.ScriptDocValues.Doubles] and [java.lang.Double].
我用 (float) doc['newPrice'] > 0 将其转换为 float,但出现了同样的错误。
然后我改为 "Double price = ((Double)doc['discountPrice'] > 0.0) ? doc['price']/doc['discountPrice'] : 0; _score * params.constant *价格",
并收到:
'Cannot cast from [Double] to [double].'
有人可以帮助我吗,尝试了很多具有类似错误的变体。该死的无痛语言...
最佳答案
你只是missing the .value
访问字段值。
你的脚本应该是这样的:
double price = doc['newPrice'].value > 0.0 ? doc['price'].value / doc['newPrice'].value : 0; _score * params.constant * price
关于java - Elasticsearch 无痛脚本错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41348247/
我对Painless非常陌生。我想编写一个简单的脚本来获取@timestamp和T1之间的时差(以毫秒为单位)。 我已经尝试使用doc ['somefield']。value和doc ['somefi
场景:在ElasticSearch上有一个文档A,我想在此文档上连接文档B上存在的某些字段。 文件A: { "id": 121423, "name": "Sample Name",
我正在将 Elasticsearch 脚本从 Groovy 转换为 Painless。 该脚本接受一个参数,该参数可以是整数或可转换为整数的字符串(即可以是 123 或 "123" )。 在 Groo
美丽的人的生活方式 一个组件BEAUTIFUL正在使用她的内部akka.actor.Actor做某些事情..(例如“表演”) 还有其他MAN真正想与 BEAUTIFUL“交互”的组件 当BEAUTIF
我正在尝试在Kibana中创建一个脚本化字段,该字段检查“Direction”字段是否为“I”。 if (doc['Direction'].value != "I") {return 1;} else
我在 flex 搜索中对以下文档进行PUT编码: { "_rootId": "327d3aba-4f7c-4abb-9ff3-b1608c354c7c", "_docId": "ID_
我尝试对包含自定义脚本函数的 ElasticSearch (6.4.0) API 执行搜索请求。在这个函数中,我尝试访问一个数组,它应该是响应数据的一部分。但我总是得到一个“null_pointer_
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 6 年前。
我正在使用 painless使用 Elastic 5.5 过滤文档 问题 使用“painless”,查找带有 strings 的文档 field 。 预期成绩 仅带有 strings 的文档字段被返回
我一直在研究聚合,以及使用 painless 编写脚本,但我无法弄清楚如何对对象中的所有值进行迭代/求和。 例子: 我的映射看起来像 "field1": { "properties": {
就像主题一样,我有 Redmine 的工作实例,我只能关闭很短的时间,我如何将我的项目等从 PostgreSQL 迁移到 MySQL 后端? 最佳答案 https://github.com/adamw
我正在运行 Elasticsearch 的本地实例,并尝试在 scripted_fields 下使用“painless”。我可以编写一行脚本代码就好了,但是当我使用三重引号(根据文档支持)来创建多行脚
我是一名优秀的程序员,十分优秀!