我有以下的XML和我想提取JSON参数“serviceNumber”的价值观 分开
我尝试使用EXTRACT功能,但我得到的结果连接起来,但我希望他们分开。
<Input>
<Header>
<User-Agent></User-Agent>
<Accepted-Language></Accepted-Language>
<Authorization></Authorization>
<Date>Mon, 27 Feb 2017 21:39:55 GMT</Date>
<Username></Username>
<Test />
<UserInfo />
<msisdn />
<imsi />
<X-Forwarded-For></X-Forwarded-For>
<x-Client-IP></x-Client-IP>
<Location />
</Header>
<URI></URI>
<ServiceName></ServiceName>
<PrimaryKey></PrimaryKey>
<Parameters>
<Parameter1></Parameter1>
<Parameter2 />
<Parameter3 />
</Parameters>
<Body>
<json:object xmlns:json="http://www.ibm.com/xmlns/prod/2009/jsonx" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.datapower.com/schemas/json jsonx.xsd">
<json:string name="transactionType"></json:string>
<json:array name="payments">
<json:object>
<json:string name="amount"></json:string>
<json:string name="serviceNumber">536888669</json:string>
<json:string name="serviceType"></json:string>
<json:string name="accountNumber"></json:string>
</json:object>
<json:object>
<json:string name="amount"></json:string>
<json:string name="serviceNumber">535394441</json:string>
<json:string name="serviceType"></json:string>
<json:string name="accountNumber"></json:string>
</json:object>
<json:object>
<json:string name="amount"></json:string>
<json:string name="serviceNumber">138422262</json:string>
<json:string name="serviceType"></json:string>
<json:string name="accountNumber"></json:string>
</json:object>
<json:object>
<json:string name="amount"></json:string>
<json:string name="serviceNumber">505809543</json:string>
<json:string name="serviceType"></json:string>
<json:string name="accountNumber"></json:string>
</json:object>
<json:object>
<json:string name="amount"></json:string>
<json:string name="serviceNumber">138422338</json:string>
<json:string name="serviceType"></json:string>
<json:string name="accountNumber"></json:string>
</json:object>
</json:array>
</json:object>
</Body>
</Input>
我想要像这样的输出
serviceNumber
-------------
536888669
535394441
138422262
505809543
138422338
用途XMLTABLE
:
SELECT x.serviceNumber
FROM your_table t
CROSS JOIN
XMLTABLE(
XMLNAMESPACE( 'http://www.yourserver.url/json/' AS "json" ),
'//root/Input/Body/json:object/json:array/json:object/'
PASSING XMLTYPE(
'<?xml version="1.0" encoding="utf-8"?>' ||
'<root xmlns:json="http://www.yourserver.url/json/">' ||
t.your_xml_column ||
'</root>'
)
COLUMNS serviceNumber NUMBER PATH './json:string[@name="serviceNumber"]'
) x
我有以下数据结构(原始数据结构为2.5gb,因此必须进行解析): 我想提取所有值及其相应的值。最后,我计划有一个带有一列personId和一列income的df(income将是重复的)。因此,棘手的部分不仅是名称空间,还包括如何在不同的节点级别访问XML。 到目前为止,我的方法无法做到这一点。 非常感谢您的帮助。
问题内容: 我以前从未真正使用过DOM解析器,现在有一个问题。 我将如何从该标记中提取URL: 问题答案: 使用simpleXML: 输出:
我有一个具有以下模式的Spark数据帧。 我想将其转换为另一个具有以下模式的DF 我已经编写了以下代码,但它不编译,并抱怨编码错误。 请建议正确的方法。
问题内容: 我有一个看起来像这样的xml: 在这里,我想检索类型为属性的“源类型”的值。 我曾这样尝试过,但无法正常工作: 我也尝试过这个: 请帮助我!! 在此先感谢Varsha。 问题答案: 由于您的问题较为笼统,请尝试使用Java中提供的XML解析器来实现。如果您特定于解析器,请在此处更新您尝试过的代码
我目前正在为我的不和谐机器人做一个计算器功能。我做了一个获取steam市场项目价格的命令,然后根据公式进行计算:([price]-[price*0.15])*案例数量,其中0.15是市场费用。问题就出在这里了。程序将json.lowest_price看作一个单词,而不是数字(我认为)。结果,bot发送消息“nan”。我不知道如何使我的代码正确地将json thingy视为一个数字。请帮助<3。这是
我正在以JSON字符串的形式从数据库中获取数据: 如何从给定的JSON字符串中提取公司名称?