[英]Extracted XML content from postgres not recognized in R
I use a substring query in PostGresql to generate the following output. 我在PostGresql中使用子字符串查询来生成以下输出。
I used this in the dbGetQuery in R studio: 我在R studio的dbGetQuery中使用了此功能:
dbGetQuery(con, "SELECT substring(response from 11 for position('</ConsumerEnquiry>' in response) + 8) FROM za.scoring_result where id in (334)")
The Output is: 输出为:
<?xml version="1.0"?>
<ConsumerEnquiry>
<Session>
<User_ID>ROCK1</User_ID>
<FullName>ROCK1</FullName>
<GroupName>014828</GroupName>
<Subscriber_ID>14828</Subscriber_ID>
<Group_ID>014828</Group_ID>
<RequestType>XML2</RequestType>
<Environment>PRODUCTION</Environment>
<Version>1.0.0</Version>
</Session>
</ConsumerEnquiry>
When I try: 当我尝试:
file2 = xmlParse("SA_Data_1")
I get an error: 我收到一个错误:
Error: XML content does not seem to be XML: 'SA_Data_1' 错误:XML内容似乎不是XML:“ SA_Data_1”
Can someone help me? 有人能帮我吗? My first post here.. :)
我的第一篇文章在这里.. :)
You need to save the output. 您需要保存输出。 I'm guessing you really mean to do:
我猜你真的打算这样做:
SA_Data_1 = dbGetQuery(con,
"SELECT substring(response from 11 for position('</ConsumerEnquiry>' in response) + 8)
FROM za.scoring_result where id in (334)")
assuming this returns the XML as a character string, then you can do 假设这将XML作为字符串返回,那么您可以
SA_parsed = xmlParse(SA_Data_1$substring)
to get a parsed version of the XML. 获得XML的解析版本。 Then you can extract bits from it using the rest of the XML package.
然后,您可以使用XML包的其余部分从中提取位。
file2 = xmlParse("SA_Data_1")
fails because its interpreting "SA_Data_1" as a piece of XML, which it isn't. 失败,因为它将“ SA_Data_1”解释为不是的XML。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.