您可以使用Oracle的PIVOT函数将一个Personid的输出转换为单行。下面是一个使用BIRT和Oracle查询的示例代码:
SELECT *
FROM (
SELECT Personid, Attribute, Value
FROM YourTable
)
PIVOT (
MAX(Value)
FOR Attribute IN ('Name', 'Age', 'Gender')
)
WHERE Personid = '123'
上述代码中,假设您的表名为YourTable,其中包含Personid、Attribute和Value列。您可以根据实际情况调整表名和属性值。在PIVOT子句中,我们使用MAX(Value)来将每个属性的值转换为单行。
在BIRT中,您可以将上述代码作为您的数据源查询语句。然后,您可以在报表设计中使用数据集绑定相应的字段,以便将结果展示在报表中。
希望这个示例可以帮助您解决问题!