需要SQL查询才能将列拆分为3列

时间:2016-09-16 06:11:14

标签: sql-server

我设计了一个名为'customerdetails'的表格。到目前为止还没有输入任何数据。 任何人都可以建议我任何SQL查询来拆分列'customeradd'。列分为3个子列,使其在模式中看起来像这样: -

'customeradd'

 | A | B | C |
 |   |   |   |

A,B,C是customeradd

的3个子列

1 个答案:

答案 0 :(得分:0)

I tried like this 

CREATE TABLE #A
(
CUSTOMERADD VARCHAR(MAX)
)
INSERT INTO #A VALUES
(
'| A | B | C | | | | |')



SELECT * 
FROM 
( SELECT IDX = LEFT(CUSTOMERADD,1)
       , CUSTOMERADD
       , RN = ROW_NUMBER() OVER (PARTITION BY LEFT(CUSTOMERADD,1) ORDER BY CUSTOMERADD) 
  FROM 
  ( VALUES ('A'),('B'),('C')) 
  V(CUSTOMERADD)
) DAT
PIVOT 
( MAX(CUSTOMERADD)
  FOR IDX IN ([A],[B],[C])
) P