我正在尝试从存储在单个 XML 字段中的 MS-SQL Server 2008 数据库中提取四条信息。这是我第一次不得不使用 XML,所以我遇到了一些麻烦,这就是为什么我只有我要提取的数据。我曾尝试使用其他帖子来解决我的问题,但显然没有运气。
这四条信息首先是“项目经理”,然后是“价值”,然后是“利润中心”,然后是价值。“利润中心”的值将用于在两个表之间进行连接。下面是存储在此字段中的 XML 数据示例。
<ArrayOfEntityPropertyOfString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<EntityPropertyOfString>
<Name>Project Manager</Name>
<Value>DBD</Value>
</EntityPropertyOfString>
<EntityPropertyOfString>
<Name>Profit Center</Name>
<Value>211</Value>
</EntityPropertyOfString>
</ArrayOfEntityPropertyOfString>
所以在这个例子中,我需要使用“利润中心”的值“211”在一个 MS-SQL 查询中加入这两个表。该信息可以称为“tblProfitCenter”的表和保存它的字段“prftData”。
这是一个组合查询,如果“prftData”中的数据不是 XML 格式,而是一个包含利润中心 ID 并执行连接的常规整数字段,则该查询将执行相同的工作。
SELECT md.LName, md.FName, pc.ProfitCenterName
FROM tblMainDataCenter md
LEFT OUTER JOIN tblProfitCenter pc ON md.pcID = pc.prftData
这是针对我工作的项目,需要能够超越这一点。通常我会学习 XML 来解决这个问题,但时间不允许这样做。在我有机会学习 XML 之前,我将不胜感激。