在select语句中将帐户显示为“subheader”?

时间:2013-10-31 14:52:55

标签: sql oracle oracle-sqldeveloper

我的经理让我改变了成本报告的显示方式。她希望数据最终看起来像这样:

Account | Transaction_date | Short Description
123456  |  (null)          | (null)
 (null) | 10-31-2013       | Waste of time
 (null) | 10-31-2013       | Happy Halloween

这是表格通常显示数据的方式:

Account | Transaction_date | Short Description
 123456 | 10-31-2013       | Waste of time
 123456 | 10-31-2013       | Happy Halloween

现在我认为lag函数可以帮助我或某种loop但是每次我完成之前我都意识到数据会丢失或显示不正确。我尝试通过谷歌查看是否有其他人不得不做这种事情,但空手而归。我想我的问题是,这甚至是可能的,还是我可以转向更重要的事情?

提前致谢。

1 个答案:

答案 0 :(得分:2)

最好的方法是在CLIENT站点上而不是在SQL语句中执行此操作。

您也可以在SQL

中执行此操作

SQLFiddle demo

select Account,
       Transaction_date,
       Short_Description

FROM
(
select distinct 0 Ord , Account OrdAcc,
                  Account, 
                  NULL Transaction_date,
                  NULL Short_Description
FROM T
UNION ALL
select 1 Ord , Account OrdAcc,
                  NULL Account, 
                  Transaction_date,
                  Short_Description
FROM T

) T1

ORDER BY OrdAcc,Ord