需要SQL查询才能将列拆分为3列
问题描述:
我设计了一个名为'customerdetails'
的表。直到现在还没有数据输入到它。 任何人都可以建议我任何SQL查询拆分列'customeradd'
。柱为3个子列,以便它看起来像这样在模式: -需要SQL查询才能将列拆分为3列
'customeradd'
| A | B | C |
| | | |
A,B,C是customeradd
柱
答
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
+0
嗨,这个SQL查询给我ORA-00922--缺少或无效的选项,错误。我已经检查过它的语法和它的外观。请帮忙。 –
+0
此代码可以在MSSQL中接受.... – Chanukya
的3分个子列它最初是如何存储在哪里? –
1)将你的实际设计分解为1NF 2)这是一个好主意2)有哪些数据会在那里(例如!)。如何在不知道数据的情况下提出拆分方法? 3)如果没有输入数据,为什么不放弃这个并从头开始正确地开始? – Shnugo
添加更多详细信息,表中的值是什么,以及您想要在分割的列中插入什么值 – dhS