小花喵 老牛亦知昭光贵,不用扬鞭自奋蹄。

sql server xml example

select createdTime,serialNumber,processDefinitionId,processInstanceName,currentState,

CAST(fieldValues AS xml ).value('(/TYHR008/txt0101)[1]', 'varchar(20)') AS txt0101,

CAST(fieldValues AS xml ).value('(/TYHR008/dlb0102)[1]', 'varchar(20)') AS dlb0102,

--T2.grid.query('.'),

T2.grid.query('.').value('(/record/item)[1]','varchar(20)') as item1,

T2.grid.query('.').value('(/record/item)[2]','varchar(20)') as item2,

T2.grid.query('.').value('(/record/item)[3]','varchar(20)') as item3,

T2.grid.query('.').value('(/record/item)[4]','varchar(20)') as item4,

T2.grid.query('.').value('(/record/item)[5]','varchar(20)') as item5,

T2.grid.query('.').value('(/record/item)[6]','varchar(20)') as item6,

T2.grid.query('.').value('(/record/item)[7]','varchar(20)') as item7,

T2.grid.query('.').value('(/record/item)[8]','varchar(20)') as item8,

T2.grid.query('.').value('(/record/item)[9]','varchar(20)') as item9,

T2.grid.query('.').value('(/record/item)[10]','varchar(20)') as item10,

T2.grid.query('.').value('(/record/item)[11]','varchar(20)') as item11,

T2.grid.query('.').value('(/record/item)[12]','varchar(20)') as item12,

T2.grid.query('.').value('(/record/item)[13]','varchar(20)') as item13

from

(SELECT  top 40 p.createdTime, f.serialNumber,f.fieldValues,CAST(f.fieldValues AS xml ).value('(/TYHR008/grd0501)[1]', 'varchar(20)') AS grd0501,

CAST(f.fieldValues AS xml ).query('/TYHR008/grd0501') as grid,

                p.processDefinitionId, p.processInstanceName,p.currentState

FROM      dbo.FormInstance AS f INNER JOIN

                dbo.LocalRelevantData AS l ON f.OID = l.valueOID INNER JOIN

                dbo.ProcessInstance AS p ON l.containerOID = p.contextOID

WHERE   (p.processDefinitionId = 'TYHR008') and p.createdTime >=getdate()-30) T

CROSS APPLY grid.nodes('/grd0501/records/record') AS T2(grid) 

order by serialNumber


作者:admin 分类:数据库 浏览:1442 评论:0
留言列表
发表评论
来宾的头像