完成如下结果 ,输出:字段名称,内容

结果:


思路:先对每一行标号,然后union all 的方法将数据连接起来,然后根据rn分组,得到结果

代码:

with t as
 (select ename, job, sal, row_number() over(order by ename) rn from emp1),
t1 as
 (select 'ENAME' c1, ename c2, rn
    from t
  union all
  select 'JOB', JOB, rn
    from t
  union all
  select 'SAL', to_Char(SAL) sal, rn
    from t
union all
select '','' ,rn from t)
select max(c1),max(c2)from (
select c1,c2, rn from t1   order by c1,rn) group by c1,rn  order by rn


你可能感兴趣的:(SQL,Practice)