簡體   English   中英

如何在SQL中使用另一列的內容將數據從一列拆分為單獨的列

[英]How to split the data from one column into separate columns using the contents of another column in SQL

我有一個具有以下布局的表:

RecordID    OptionID    StudentID   ClassID DEMOGRAPHIC     DemographicOption
74276205    1283131     20348031    1766586 REGION          East
74276205    866932      20348031    1766586 OFFICE          Boston
74276205    867044      20348031    1766586 CAREER_LEVEL    Manager
74276205    867016      20348031    1766586 FSS             Con
74276205    867073      20348031    1766586 SERVICE_AREA    Human Capital
74276205    1196052     20348031    1766586 SERVICE_LINE    HR Transformation
74276205    1264928     20348031    1766586 INDUSTRY        Life Sciences 

我需要使用人口統計列,並從與人口統計列中的標簽相對應的結果中分離出單獨的列。

我該怎么做呢?我嘗試了幾件事,最終結果分別放在不同的行上,但是我需要將數據放在一行上,如下所示:

RecordID    OptionID    StudentID   ClassID DEMOGRAPHIC REGION  OFFICE  CAREER_LEVEL    FSS SERVICE_AREA    SERVICE_LINE        INDUSTRY
74276205    1283131     20348031    1766586 REGION      East    Boston  Manager         Con Human Capital   HR Transformation   Life Sciences

任何幫助,我們將不勝感激。

SELECT
    t.RecordID,
    t.OptionID,
    t.StudentID,
    t.ClassID,
    t.Region,
    o.Office,
    c.Career_Level,
    f.FSS,
    sa.Service_Area,
    sl.Service_Line,
    i.Industry
FROM tablename AS t
JOIN tablename AS o
    ON t.recordid = o.recordid AND demographic = 'OFFICE'
JOIN tablename AS c
    ON t.recordid = c.recordid AND demographic = 'CAREER_LEVEL'
JOIN tablename AS f
    ON t.recordid = f.recordid AND demographic = 'FSS'
JOIN tablename AS sa
    ON t.recordid = sa.recordid AND demographic = 'SERVICE_AREA'
JOIN tablename AS sl
    ON t.recordid = sl.recordid AND demographic = 'SERVICE_LINE'
JOIN tablename AS i
    ON t.recordid = i.recordid AND demographic = 'INDUSTRY'
WHERE demographic = 'REGION'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM