问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

sql语句列转行的问题

发布网友 发布时间:2022-04-24 06:36

我来回答

4个回答

热心网友 时间:2022-04-08 03:10

sqlserver2005及以上版本

CREATE TABLE test(id INT,[USER_ID] VARCHAR(10),door_id VARCHAR(50))
INSERT INTO dbo.test
        ( id, USER_ID, door_id )
SELECT 1,'U100174','0000000015;0000000018;;'
UNION ALL
SELECT 2,'U120225','0000000023;'



SELECT A.ID,USER_ID,B.door_id
FROM(
  SELECT id,USER_ID,door_id = CONVERT(xml,'<root><v>' + REPLACE(door_id, ';', '</v><v>') + '</v></root>') FROM test
)A
OUTER APPLY(
  SELECT door_id = N.v.value('.', 'varchar(100)') FROM A.door_id.nodes('/root/v') N(v)
)B
WHERE ISNULL(b.door_id,'')<>''

结果:
1U1001740000000015
1U1001740000000018
2U1202250000000023

热心网友 时间:2022-04-08 04:28

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)'))<>''

热心网友 时间:2022-04-08 06:03

行转列的情况比较的多,列转行的比较少貌似。追问能说点有用的吗?

热心网友 时间:2022-04-08 07:54

数据库第一范式是怎么说来的?追问你是说主键吗?
id 是 IDENTITY(INT,1,1) id 产生的
我是把user_id,door_id查出来然後加上IDENTITY(INT,1,1) id插到虚拟表裏面去的。
然後要将door_id列转行

追答第一范式(1NF):强调的是列的原子性,即列不能够再分成其他几列。
已经不能分成多列,又怎么能分成行呢?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... 陕西职务侵占案立案准则 结婚后我的恋情维系了十年,怎么做到的? 玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 SQL Server生成脚本失败 sqlserver2000 中, cross in 是什么意思?谢谢 postgresql 中有类似MSSQL中的cross apply函数吗 SQL SERVER 2000 可以执行select * from sys.dm_exec_sql_text吗 SqlServer2008有多少种join? sqlserver2008r2查看历史执行过的语句时报错? 哈弗m6怎么看车那个月生产的? 关于SQL数据库中cross join 和inner join用法上的区别? 使用U8执行某个功能,如何查看执行了哪些SQL sql server 中的交叉连接 sql server 怎样用select语句调用自定义表值函数 SQL语句如何等于多个子查询的值,如图所示,谢谢各位大神,写存储过程... sql 速度快的表关联:join 和Cross Apply 一个棘手的sql server 查询问题,求帮忙。想用cross apply 连接符....谢谢大家 怎么看汽车是几月份生产的 一个杠下面三个点是什么符号 sqlserver2005 中的cross apply 在ORACLE中怎么实现 汽车的生产日期怎么看? 三个点是什么字 ,构成三角形的形状 如何查询奔驰汽车生产日期 sql server 数据库联合查询、并汇总 去重 sql server 2005中视图及多表连接。。高手请进! long path names to files on sql server installation media怎... Sql Server 存储过程,怎样把传入的字符串作为where条件 苹果Macbook怎么编辑hosts文件 Mac上修改Hosts两种方法详解 草书康字怎样写 苹果电脑怎么设置hosts文件 康字怎么写好看 回答 Mac电脑怎么修改host “康”字的硬笔草书怎么写? 行书康字怎么写 ,{mac如何设置hosts}? 康 字怎么写好看 苹果Macbook怎么编辑hosts文件 “康”的繁体字怎么写? mac下怎么修改hosts文件 鸡粪便如何处理 请问”康“艺术字体怎么写 mac 怎样修改hosts文件 康景雯这个名字连笔写怎么好看(那种连起来的,但是楷书之类的写法)