2009-11-12 52 views
0

我有一个包含XML数据类型(列名FileContent)列的表。我想创建一个查看XML数据类型列的内容的视图,以便我不再拥有FileContent列,而是从底层XML文档中调用FuelPathwayCode和PhysicalPathwayCode两个附加列。这可能与SQL Server 2008?如果是这样,怎么样?谢谢。通过XML数据类型列查看

CREATE VIEW vw_LC_UploadXML 
AS Select 
    UploadFileID, 
    Year, 
    Quarter, 
    CompanyID, 
    FileType, 
    FileContent, 
    FileName, 
    Description, 
    Success, 
    AddBy, 
    AddDttm 
FROM LC_UploadXML 

回答

4

http://msdn.microsoft.com/en-us/library/bb500166.aspx

使用FileContent.value('(/FuelPathwayCode/@year)[1]', 'int(4)')检索您正在寻找的特定领域。

这是这里支持SQL Server 2008中

+0

我正在寻找遍历整个XML文档并查询一个结果集中的/ FuelPathwayCode的所有值? [1]只是提起一审。我用什么来获取../FuelPathwayCode的所有值?选择FileContent.value('(LCFS-Report/Fuel/FuelPathwayCode)[1]','varchar(100)')作为FuelPathwayCode FROM LC_UploadXML – Lakeshore 2009-11-12 20:05:44

0

XML具有相当丰富的Sql Server的2K5支持最多,有多种选择。您可以尝试使用xml data type methods来查询,提取值,迭代文档中的节点以及修改内容。这可能是在视图中使用的最佳选择,在您的情况下,您可能需要查看value method