将excel文档中的多行组合在一起,只有一个列值与单行显示不同的值作为不同的列

时间:2018-05-04 15:13:02

标签: sql excel

我有一张excel表,其中我的数据表包含如下所示的数据

   name       job     salary
   sumit    carpenter  1000
   sumit    teacher    1000
   sumit    doctor     1000

表如上所示我想表示像这样的数据

name       job1    job2      job3     salary
sumit    carp..  teacher   doctor   1000

是否有任何功能要执行此操作我想将此数据转换为sql,或者是否有任何可以执行上述指定任务的sql查询

1 个答案:

答案 0 :(得分:0)

如果您使用 Oracle 数据库,那么您可以 PIVOT 子句来激活此类记录。我们认为您的表名是 EMP

SELECT *
FROM
  ( SELECT * FROM EMP
  ) PIVOT (MAX (JOB) FOR JOB IN ('carpenter' AS "JOB1",'teacher' AS "JOB2",'doctor' AS "JOB3"));

<强> Demo