Sql 如何在透视查询中重命名列

Sql 如何在透视查询中重命名列,sql,oracle,pivot,Sql,Oracle,Pivot,这将产生与以下类似的结果: select * from (select REGS_CRSE_TITLE as CRSE_TITLE, REGS_BILL_HR as BILL_HOURS, FCR_TO_DATE, FCR_TUIT_REFUND from REGS, FCR where REGS_ID = 123456 and REGS_CODE = FCR_CODE and FCR_TERM_CODE = 2019 and FCR_RSTS_CODE in ('CD','CW') order

这将产生与以下类似的结果:

select * from (select REGS_CRSE_TITLE as CRSE_TITLE, REGS_BILL_HR as BILL_HOURS, FCR_TO_DATE, FCR_TUIT_REFUND
from REGS, FCR
where REGS_ID = 123456
and REGS_CODE = FCR_CODE
and FCR_TERM_CODE = 2019
and FCR_RSTS_CODE in ('CD','CW')
order by REGS_CRSE_TITLE
)
pivot
(
max (FCR_TO_DATE)
for FCR_TUIT_REFUND IN (100, 50)
);

我需要将pivot创建的列重命名为其他列。因此,100和50列标题将被重命名为更有意义的内容。我似乎不能像前两列那样用一个简单的“AS”来完成它。此外,“orderby”在这种情况下似乎也不起作用,但这对我来说并不像重命名列那样重要。任何帮助都将不胜感激

您可以使用
AS
ORDER BY
应该是最后一个子句:

CRSE_TITLE                 BILL_HOURS             100         50
English II                     3               28-Aug-19    9-Sep-19
Sculpture 1                    3               28-Aug-19    9-Sep-19
Intro to Business              3               28-Aug-19    9-Sep-19
Graphic Design                 3               28-Aug-19    9-Sep-19
Senior Project               0.5               28-Aug-19    9-Sep-19
Web Application Dev            3               28-Aug-19    9-Sep-19
...
pivot
(
max (FCR_TO_DATE)
for FCR_TUIT_REFUND IN (100 AS col1, 50 AS col2)
)
order by CRSE_TITLE 
;