98 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
			
		
		
	
	
			98 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
SELECT * FROM (
 | 
						|
SELECT FormatID,Name,ParentID
 | 
						|
,isnull(v.value('Font[1]/@Family', 'varchar(100)'),'*') AS [MyFont] 
 | 
						|
,v.value('@Index', 'Int') AS [MyIndex] 
 | 
						|
From Formats
 | 
						|
CROSS APPLY Data.nodes('//Step') TempXML(v)
 | 
						|
) AS SRC
 | 
						|
PIVOT( Max(MyFont) FOR MyIndex IN (
 | 
						|
[0], [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],[34],[35],[36],[37],[38],[39],[40],
 | 
						|
[41],[42],[43],[44],[45],[46]
 | 
						|
)) AS PVT1 Order by FormatID
 | 
						|
 | 
						|
SELECT * FROM (
 | 
						|
SELECT FormatID,Name,ParentID
 | 
						|
,isnull(v.value('Font[1]/@Size', 'varchar(100)'),'*') AS [MyFont] 
 | 
						|
,v.value('@Index', 'Int') AS [MyIndex] 
 | 
						|
From Formats
 | 
						|
CROSS APPLY Data.nodes('//Step') TempXML(v)
 | 
						|
) AS SRC
 | 
						|
PIVOT( Max(MyFont) FOR MyIndex IN (
 | 
						|
[0], [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],[34],[35],[36],[37],[38],[39],[40],
 | 
						|
[41],[42],[43],[44],[45],[46]
 | 
						|
)) AS PVT1 Order by FormatID
 | 
						|
 | 
						|
 | 
						|
SELECT * FROM (
 | 
						|
SELECT FormatID,Name,ParentID
 | 
						|
,isnull(v.value('Font[1]/@Style', 'varchar(100)'),'*') AS [MyFont] 
 | 
						|
,v.value('@Index', 'Int') AS [MyIndex] 
 | 
						|
From Formats
 | 
						|
CROSS APPLY Data.nodes('//Step') TempXML(v)
 | 
						|
) AS SRC
 | 
						|
PIVOT( Max(MyFont) FOR MyIndex IN (
 | 
						|
[0], [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],[34],[35],[36],[37],[38],[39],[40],
 | 
						|
[41],[42],[43],[44],[45],[46]
 | 
						|
)) AS PVT1 Order by FormatID
 | 
						|
 | 
						|
 | 
						|
 | 
						|
 | 
						|
SELECT v.value('@Index', 'Int') AS [MyIndex] 
 | 
						|
,v.value('@Type', 'varchar(100)') AS [MyType] 
 | 
						|
,v.value('@ParentType', 'varchar(100)') AS [MyParent] 
 | 
						|
From Formats
 | 
						|
CROSS APPLY Data.nodes('//Step') TempXML(v)
 | 
						|
WHERE FormatID=1
 | 
						|
 | 
						|
SELECT MyFont,Count(*) HowMany FROM (
 | 
						|
SELECT v.value('../@Family', 'varchar(100)') MyFont
 | 
						|
From Formats
 | 
						|
CROSS APPLY Data.nodes('//Step/Font') TempXML(v)) T1
 | 
						|
group by MyFont
 | 
						|
order by MyFont
 | 
						|
 | 
						|
SELECT MySize,Count(*) HowMany FROM (
 | 
						|
SELECT v.value('../@Size', 'varchar(100)') MySize
 | 
						|
From Formats
 | 
						|
CROSS APPLY Data.nodes('//Step/Font') TempXML(v)) T1
 | 
						|
group by MySize
 | 
						|
order by MySize
 | 
						|
 | 
						|
SELECT MyStyle,Count(*) HowMany FROM (
 | 
						|
SELECT v.value('../@Style', 'varchar(100)') MyStyle
 | 
						|
From Formats
 | 
						|
CROSS APPLY Data.nodes('//Step/Font') TempXML(v)) T1
 | 
						|
group by MyStyle
 | 
						|
order by MyStyle
 | 
						|
 | 
						|
SELECT MyFont,Count(*) HowMany FROM (
 | 
						|
SELECT v.value('@Family', 'varchar(100)') MyFont
 | 
						|
From Formats
 | 
						|
CROSS APPLY Data.nodes('//Font') TempXML(v)) T1
 | 
						|
group by MyFont
 | 
						|
order by MyFont
 | 
						|
 | 
						|
SELECT MySize,Count(*) HowMany FROM (
 | 
						|
SELECT v.value('@Size', 'varchar(100)') MySize
 | 
						|
From Formats
 | 
						|
CROSS APPLY Data.nodes('//Font') TempXML(v)) T1
 | 
						|
group by MySize
 | 
						|
order by MySize
 | 
						|
 | 
						|
SELECT MyStyle,Count(*) HowMany FROM (
 | 
						|
SELECT v.value('@Style', 'varchar(100)') MyStyle
 | 
						|
From Formats
 | 
						|
CROSS APPLY Data.nodes('//Font') TempXML(v)) T1
 | 
						|
group by MyStyle
 | 
						|
order by MyStyle
 |