博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL行转列
阅读量:6806 次
发布时间:2019-06-26

本文共 752 字,大约阅读时间需要 2 分钟。

目的:将相同条件的多行值合并到同一列,

1.创建测试表:

CREATE TABLE [dbo].[TB_01](    [SN] [nvarchar](50) NULL,    [STEP_NAME] [nvarchar](50) NULL,    [SDATE] [datetime] NULL) ON [PRIMARY]

2.插入测试数据:

INSERT INTO TB_01 VALUES('V000001','FQC','2015-01-01 10:20')INSERT INTO TB_01 VALUES('V000001','OQC','2015-01-02 07:35')INSERT INTO TB_01 VALUES('V000002','FQC','2015-05-23 15:26')

 

3.原始数据结果:

 

期望的数据格式:

V000001    FQC(2015-01-01 10:20:00),OQC(2015-01-02 07:35:00)

V000002    FQC(2015-05-23 15:26:00)

 

4.利用FOR XML PATH实现:

SELECT  SN,LEFT(Steps,LEN(Steps)-1) AS AAAAA  FROM (        SELECT SN,        (SELECT Step_Name+'('+CONVERT(VARCHAR(100),SDATE,120)+')'+','  FROM TB_01          WHERE SN=A.SN           FOR XML PATH('')) AS Steps        FROM TB_01 A         GROUP BY SN        ) B

最终结果:

 

转载地址:http://gntwl.baihongyu.com/

你可能感兴趣的文章
Hive语言手册-ORC
查看>>
提高网页效率的14条准则
查看>>
MYISAM表的.frm、MYI损坏,丢失的修复方法
查看>>
比较两个数大小
查看>>
SOA安全性解决方案
查看>>
vim个性化设置---给脚本文件加注释头信息
查看>>
语音识别技术突飞猛进 终有一天将超过人
查看>>
JavaScriptSerializer 序列化json 时间格式
查看>>
Citrix Supportability Pack介绍
查看>>
再次总结一下压缩与解压缩
查看>>
POST数据加密问题
查看>>
菜鸟学Linux 第048篇笔记 配置slave server
查看>>
media jquery 适配ios不同手机
查看>>
无线WIFI上网监控串联部署方案
查看>>
nfs文件系统
查看>>
修复错误配置fstab文件导致系统无法正常启动
查看>>
zabbix监控web
查看>>
gitlab+jenkins+maven+docker持续集成(二)——maven安装配置
查看>>
一次性去掉Word 2013文档中所有文字下波浪线的方法
查看>>
Oracle队列锁enq:TS,Temporary Segment (also TableSpace)
查看>>