sql查询多个结果字段通过逗号分隔为同一行显示、sql查询结果有符号分隔的字段拆分多行显示
2024-09-05 05:06:12
一、sql查询多个结果通过逗号分隔为同一行显示
sql查询数据结果
select e.ctrl_desc from t_ctrl_entry e inner join CodeGroupKeyCodes c on e.ctrl_code=c.KeyCode where c.GroupId='3060' and e.roomid=c.RoomId
Group by e.ctrl_desc
实现同一行逗号分隔显示
1、使用 FOR XML PATH ('')
这一部分已经可以实现列转行并用逗号分隔了,但是输出的是这样的格式:
,名字1,名字2,名字3
所以需要在外面再调用STUFF 的函数进行裁剪,把第一个逗号去掉,这样就可以了(下第二步)
select ','+t.ctrl_desc from (
select e.ctrl_desc from t_ctrl_entry e inner join CodeGroupKeyCodes c on e.ctrl_code=c.KeyCode where c.GroupId='3060' and e.roomid=c.RoomId
Group by e.ctrl_desc)t FOR XML PATH ('')
2、使用STUFF 的函数进行裁剪第一个逗号
select STUFF (sql语句 ,1,1, '' ) AS keycodename
select STUFF ((
select ','+t.ctrl_desc from (
select e.ctrl_desc from t_ctrl_entry e inner join CodeGroupKeyCodes c on e.ctrl_code=c.KeyCode where c.GroupId='3060' and e.roomid=c.RoomId
Group by e.ctrl_desc)t FOR XML PATH ('')) ,1,1, '' ) AS keycodename
二、sql查询结果有符号分隔的字段拆分多行显示
select RoomIdArr from [iControl4].[dbo].[CodeGroupRoom]
拆分
select a.RoomIdArr
,SUBSTRING(a.RoomIdArr,number,CHARINDEX('|',a.RoomIdArr+'|',number)-number) as roomids
from [iControl4].[dbo].[CodeGroupRoom] a with(nolock) ,master..spt_values with(nolock)
where 1=1
and type='p'
and SUBSTRING('|'+a.RoomIdArr,number,1)='|'
最新文章
- Microsoft.VisualStudio.TestTools.UnitTesting 命名空间
- MySQL主从同步配置
- 【温故而知新-Javascript】使用Web存储
- codeforce ABBYY Cup 3.0 - Finals (online version) B2. Shave Beaver! 线段树
- Ubuntu中root用户和user用户的相互切换(转)
- Linux中如何让命令在后台运行
- Maven打包web工程成WAR
- 二维码(支持arc,苹果自带扫描,zbar扫描,二维码生成)
- Cocos2d-JS中的精灵菜单和图片菜单
- [转] 属性选择器.mark
- Javascript 中神奇的 this
- label 不同颜色
- 初码-Azure系列-如何在控制面板中选择中文版操作系统
- Struts2实现文件上传报错(三)
- 【深度学习篇】--Windows 64下tensorflow-gpu安装到应用
- vuex学习(二)
- 强大的xargs
- resful
- LOJ 534 花团(线段树+dfs栈)
- 怎么从bam文件中提取出比对OR没比对上的paired reads | bamToFastq | STAR
热门文章
- jupyter 数据显示设置
- linux安装influxdb和chronograf
- 浅谈字节码增强技术系列2-Asm与Cglib
- js将数组内属性值相同的项合并成二维数组
- C/C++语言 MD5例子
- Lombok中@Builder和@SuperBuilder注解的用法
- python基础23 之初识面向对象
- 《Effective C++》资源管理章节
- [C#]关于override和new在重写方法时的区别
- Embracing Domain Differences in Fake News- Cross-domain Fake News Detection using Multimodal Data(AAAI21)