首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >嵌套列表中特定元素的数量

嵌套列表中特定元素的数量
EN

Stack Overflow用户
提问于 2019-04-02 09:34:09
回答 1查看 68关注 0票数 0

弹性文档的结构如下:

代码语言:javascript
复制
...
"somefield": "somevalue",
"orders": [{
        "version": 1,
        "statusCode": 1
    }, {
        "version": 1,
        "statusCode": 1
    }, {
        "version": 2,
        "statusCode": 2
    }, {
        "version": 3,
        "statusCode": 5
    }, {
        "version": 3,
        "statusCode": 6
    }
]
...

"orders"是一个嵌套列表。我使用内联sctipting计算列表的大小,如下所示:

代码语言:javascript
复制
"params._source.orders.size() < 4"

我必须添加一个条件来计算statusCode不是5而不是6的订单数。

代码语言:javascript
复制
...orders.Where(o=>!(new[] {5, 6}).Contains(o.statusCode)).size()...

如何用无痛或Groovy编写脚本?

这样做的结果是:

代码语言:javascript
复制
params._source.orders.count { it -> it.statusCode == 1 } < 4
EN

回答 1

Stack Overflow用户

发布于 2019-04-02 12:49:50

我找到了无痛的解决方案之一:

代码语言:javascript
复制
def count = 0;
for (item in params._source.orders){
if (item.statusCode != 5 && item.statusCode != 6) {
count++; }}
return count < 4;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55471419

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档