ITPub博客

首页 > 应用开发 > IT综合 > 用XML/XSLT将行数据转换为列数据 (转)

用XML/XSLT将行数据转换为列数据 (转)

原创 IT综合 作者:worldblog 时间:2007-12-13 13:21:38 0 删除 编辑
用XML/XSLT将行数据转换为列数据 (转)[@more@]

摘要
长期以来,如何将行数据转换成列数据一直是个很普遍的问题。
本文介绍用xsl转换XML的方法。XML的数据取自数据库的行数据,然后用XSL转换输出为列数据。

示例中,用GroupID元素表示为行数据,用TradeID表示转换后的列数据。

用xsl:key为每个GroupID生成唯一key。

变量1stGroupID为GroupID所有子树的入口。用得到列值。

每个GroupID都调用ShowTradesInGroup模板。

在ShowTradesInGroup模板中,循环得到GroupID的所有子树。

XML数据(数据库表中各行纪录):

Rmity>
 
  244133L
  244133L_EUR_STUB
 

 
  325866L
  325866L_EUR_STUB
 

 
  244133L
  325867L_EUR_STUB1
 

 
  502722L
  502722L_EUR_STUB
 

 
  244133L
  325867L_EUR_STUB2
 

 
  502722L
  502722L_EUR_STUB1
 

 
  502722L
  502722L_EUR_STUB2
 


XSLT代码:
http://www.w3.org/1999/XSL/Transform">

 

 
  select = "//RiskRow[generate-id(.)=generate-id(key('keyGroupID',GroupID)[1])]">
 
 
 
 
 
 

 


 
 

<!--用ShowTradesInGroupID模板找出指定GroupID的所有Trade-->
 
 
 
  ,
  <!-- 在这里给出列的值 -->
 
 

 


 

结果输出为:
244133L, 244133L_EUR_STUB, 325867L_EUR_STUB1, 325867L_EUR_STUB2
325866L, 325866L_EUR_STUB
502722L, 502722L_EUR_STUB, 502722L_EUR_STUB1, 502722L_EUR_STUB2


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10752043/viewspace-992888/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
  • 博文量
    6241
  • 访问量
    2405660