-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathpivot.sql
More file actions
33 lines (30 loc) · 699 Bytes
/
pivot.sql
File metadata and controls
33 lines (30 loc) · 699 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
SELECT [Index], [Create], [Edit], [Delete]
FROM
(
SELECT *
FROM [table_Name] as m
WHERE m.ModuleId = '1' AND m.MenuFrameId = '1' AND m.Archive = 0
)P
PIVOT
(
MAX([Target_Field])
FOR COLUMNSEQ IN([Index],[Create],[Edit],[Delete])
)PIV
-----2
DECLARE @cols AS NVARCHAR(MAX),
@query AS NVARCHAR(MAX)
SELECT @cols = STUFF((SELECT DISTINCT ',' + QUOTENAME(ColumnName)
FROM [table_Name]
FOR XML PATH(''), TYPE
).value('.', 'NVARCHAR(MAX)') ,1,1,'')
--PRINT @cols
set @query = N'SELECT ' + @cols + N' FROM
(
SELECT * FROM [table_Name] AS A
) x
pivot
(
max(ColumnName)
for ColumnName in (' + @cols + N')
) p '
exec sp_executesql @query;