【发布时间】:2012-11-01 09:44:30
【问题描述】:
我的 xml 是:
<RowSet>
<Row>
<msg_id>1</msg_id>
<doc_id>1</doc_id>
<doc_version>1</doc_version>
</Row>
<Row>
<msg_id>2</msg_id>
<doc_id>1</doc_id>
<doc_version>2</doc_version>
</Row>
<Row>
<msg_id>3</msg_id>
<doc_id>1</doc_id>
<doc_version>3</doc_version>
</Row>
<Row>
<msg_id>4</msg_id>
<doc_id>2</doc_id>
<doc_version>1</doc_version>
</Row>
<RowSet>
我需要做什么:
如果有相同doc_id 的行,我只需要选择具有更大doc_version 编号的节点。
预期输出:
<RowSet>
<Row>
<msg_id>3</msg_id>
<doc_id>1</doc_id>
<doc_version>3</doc_version>
</Row>
<Row>
<msg_id>4</msg_id>
<doc_id>2</doc_id>
<doc_version>1</doc_version>
</Row>
<RowSet>
这可能会有所帮助:msg_id 是唯一的,因此msg_id 较大的行对于相同的doc_id 保留最后一个doc_version。
【问题讨论】:
标签: xslt foreach unique distinct xslt-1.0