发布网友
共4个回答
热心网友
sqlserver2005及以上版本
CREATE TABLE test(id INT,[USER_ID] VARCHAR(10),door_id VARCHAR(50))结果:
1U1001740000000015
1U1001740000000018
2U1202250000000023
热心网友
SQL查询如下, 需要SQL Server 2005或以上版本, 有支持XML
select ID,x.i.value('.', 'VARCHAR(20)') AS door_id
from (
SELECT
ID,
CAST('<i>' + REPLACE(door_id, ';', '</i><i>') + '</i>' AS XML) AS door_id
FROM view1
) s
CROSS APPLY door_id.nodes('i') x(i)
where len(x.i.value('.', 'VARCHAR(20)'))<>''
热心网友
行转列的情况比较的多,列转行的比较少貌似。追问能说点有用的吗?
热心网友
数据库第一范式是怎么说来的?追问你是说主键吗?
id 是 IDENTITY(INT,1,1) id 产生的
我是把user_id,door_id查出来然後加上IDENTITY(INT,1,1) id插到虚拟表裏面去的。
然後要将door_id列转行
追答第一范式(1NF):强调的是列的原子性,即列不能够再分成其他几列。
已经不能分成多列,又怎么能分成行呢?