首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Jsonata中实现for循环

如何在Jsonata中实现for循环
EN

Stack Overflow用户
提问于 2020-09-26 18:56:54
回答 1查看 594关注 0票数 1

我希望将xquery转换为jsonata,

代码语言:javascript
复制
let $h := $at//datahistory
for $x in 0 to (count($h))
let p:= (if (not($h[$x]/daytoday =(‘one’, ‘two’) )) then ‘ZERO’ else $h[$x+1]/Status 
return if(index-of($p) > 0 then 0 else 1)

任何形式的帮助和帮助都是非常感谢的。

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2020-09-27 05:41:03

您的XQuery是一个for表达式,可以很容易地重写为一个简单的XPath路径表达式/bookstore/book[price > 30]/title,它将转换为一个JSONata路径bookstore.book[price > 30].title。另一方面,JSON数据不太可能具有这样的具有bookstorebook的结构,我猜是具有如下数组属性的对象

代码语言:javascript
复制
{
  "bookstore" : [
    {
      "title" : "title 1",
      "price" : 20
    },
    {
      "title" : "title 2",
      "price" : 35
    },
    {
      "title" : "title 3",
      "price" : 99
    }
  ]
}

这将导致bookstore[price > 30].title (https://try.jsonata.org/0vfDXqv4m)或一个包含图书对象的简单数组

代码语言:javascript
复制
 [
    {
      "price": 20,
      "title": "title 1"
    },
    {
      "price": 35,
      "title": "title 2"
    },
    {
      "price": 99,
      "title": "title 3"
    }
]

这导致了$[price > 30].title (https://try.jsonata.org/fryxG-QLj)的可能性更大。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64076818

复制
相关文章

相似问题

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