在Oracle APEX中,我计划有一个报表查询,该查询具有填充BI Publisher中开发的模板所需的SQL。我需要一个查询,该查询需要生成类似于下面提到的XML的输出。
<DOCUMENT>
<ROWSET>
<PRIMARY_ID>10</PRIMARY_ID>
<KEY_VALUE>
<Key>Apple</Key>
<Value>2</Value>
</KEY_VALUE>
</ROWSET>
<ROWSET>
<PRIMARY_ID>20</PRIMARY_ID>
<KEY_VALUE>
<Key>Orange</Key>
<Value>5</Value>
</KEY_VALUE>
</ROWSET>
</DOCUMENT>
请注意,此查询将放置在Oracle APEX 5.1版本的“报告查询”部分。
目前,我能够编写一个SQL查询,该查询可以生成XML,如下所示。区别在于没有“ KEY_VALUE”标签将“ Key”和“ Value”括起来。
<DOCUMENT>
<ROWSET>
<PRIMARY_ID>10</PRIMARY_ID>
<Key>Apple</Key>
<Value>2</Value>
</ROWSET>
<ROWSET>
<PRIMARY_ID>20</PRIMARY_ID>
<Key>Orange</Key>
<Value>5</Value>
</ROWSET>
</DOCUMENT>
这是我提出的查询。
SELECT
distinct v.id id,
(Select 'Status' from dual) "KEY",
(Select v.status from dual) "Value"
FROM
.......
Select * from
(SELECT PRIMARY_ID, 'Apple' as Key, item_count as value
FROM xxc_test where item_id = 45
UNION
SELECT PRIMARY_ID, 'Orange' as Key, item_count as value
FROM xxc_test where item_id = 46
UNION
SELECT PRIMARY_ID, 'Grapes' as Key, item_count as value
FROM xxc_test where item_id = 47);