SAS XML映射 - 包含多个XML文件

时间:2012-03-08 00:46:45

标签: mysql xml xml-parsing extract sas

我想知道如何将SAS XML Mapping与多个XML文件一起使用

以下代码是我使用SAS XML Mapper(global.map)的映射提取一个xml文件(data1.xml)我能够获得最终提取的数据集“GlobalDecision”......

filename  data1 'c:\data1.xml';
filename  SXLEMAP 'c:\global.map';
libname   data1 xml xmlmap=SXLEMAP access=READONLY;

proc datasets lib=data1; quit;

DATA GlobalDecision; SET data1.GlobalDecision; run;

然而,我的XML存储在mySQL中的每个ID,每个记录都有名为“var_x”的xml文本(未压缩),所以如果我要提取10条记录,我会使用下面的代码提取我的数据集

proc sql; create table x as select ID, var_x from table1 limit 10 ;quit; 

我的问题是如何将我的x表合并到上面的Mapping代码中,以获得“GlobalDecision”最终表格,该表格将为我提供10条记录并提取所有值。

谢谢!

1 个答案:

答案 0 :(得分:0)

一行数据(“var_x”)将具有看起来像这样的xml

 <?xml version="1.0" encoding="utf-8"?>
    <AResponse>
      <GenerationTime>20120301120031</GenerationTime>
      <CodeVersion>4.34.1</CodeVersion>
      <RequestVersion>3.0</RequestVersion>
      <TransactionId>156368133</TransactionId>
      <TrackHash>2211bc09ee00c45fe6ffa61648f33d3e</TrackHash>
      <Id>1125051053</Id>
      <Response>   
        <GlobalDecision>
          <Decision>N</Decision>
          <Mcost>0</Mcost>
          <LC>A1</LC>
          <Check>A1</Check>
          <IDet>D6</IDet>
          <ReferBuckets>
            <Bucket>P1</Bucket>
          </ReferBuckets>
 </GlobalDecision>
  </Response>
</AResponse>