MSSQL按类型

时间:2018-09-24 12:51:15

标签: sql sql-server

我在mssql中有一些要转换为列的数据,它是具有图像类型的图像名称的列表。

enter image description here

但是我想要这样格式化

enter image description here

所以它以列为中心,那么如果一个单元格中有多个,以逗号分隔,我该怎么办呢?

这是当前查询

select code,img_type,fileName 
from images join 
     Intranet.dbo.image_lkup lk 
     on lk.img_id = images.[type]

这是MSSQL 2012

1 个答案:

答案 0 :(得分:0)

如果文件类型有限,那么我将使用条件聚合:

select code, 
       max(case when img_type = 'Cutout' then fileName end) as Cutout,
       max(case when img_type = 'Dims' then fileName end) as Dims,
       max(case when img_type = 'Ins' then fileName end) as Ins
from images im inner join 
     Intranet.dbo.image_lkup lk 
     on lk.img_id = images.[type]
group by code;