一、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)='|'

最新文章

  1. Microsoft.VisualStudio.TestTools.UnitTesting 命名空间
  2. MySQL主从同步配置
  3. 【温故而知新-Javascript】使用Web存储
  4. codeforce ABBYY Cup 3.0 - Finals (online version) B2. Shave Beaver! 线段树
  5. Ubuntu中root用户和user用户的相互切换(转)
  6. Linux中如何让命令在后台运行
  7. Maven打包web工程成WAR
  8. 二维码(支持arc,苹果自带扫描,zbar扫描,二维码生成)
  9. Cocos2d-JS中的精灵菜单和图片菜单
  10. [转] 属性选择器.mark
  11. Javascript 中神奇的 this
  12. label 不同颜色
  13. 初码-Azure系列-如何在控制面板中选择中文版操作系统
  14. Struts2实现文件上传报错(三)
  15. 【深度学习篇】--Windows 64下tensorflow-gpu安装到应用
  16. vuex学习(二)
  17. 强大的xargs
  18. resful
  19. LOJ 534 花团(线段树+dfs栈)
  20. 怎么从bam文件中提取出比对OR没比对上的paired reads | bamToFastq | STAR

热门文章

  1. jupyter 数据显示设置
  2. linux安装influxdb和chronograf
  3. 浅谈字节码增强技术系列2-Asm与Cglib
  4. js将数组内属性值相同的项合并成二维数组
  5. C/C++语言 MD5例子
  6. Lombok中@Builder和@SuperBuilder注解的用法
  7. python基础23 之初识面向对象
  8. 《Effective C++》资源管理章节
  9. [C#]关于override和new在重写方法时的区别
  10. Embracing Domain Differences in Fake News- Cross-domain Fake News Detection using Multimodal Data(AAAI21)