Extraction des valeurs de champ XML dans MS-SQL Server 2008

Je suis d'essayer d'extraire des informations à partir d'un MS-SQL Server 2008 de la base de données qui est stocké dans un seul champ XML. C'est la première fois que j'ai jamais eu à travailler avec XML, donc je vais avoir un peu de mal et c'est pourquoi je n'ai que les données que je suis en train de les extraire. J'ai essayé d'utiliser d'autres offres pour résoudre mon problème, mais évidemment avec pas de chance.

Les quatre morceaux de l'information est d'abord le "Project Manager", puis la "Valeur" et puis 2e est le "Centre de Profit" et la valeur. La valeur de "Centre de Profit" va être utilisé pour faire une jointure entre deux tables. Ci-dessous est un échantillon de données XML qui est stocké dans ce domaine.

    <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>

Donc, dans cet exemple, j'ai besoin d'utiliser le "Centre de Profit" valeur "211" pour joindre les deux tables le tout dans un MS-SQL de la requête. Le tableau que cette information peut être appelé "tblProfitCenter" et le domaine de la tenir "prftData".

Voici une requête qui ferait le même travail si les données dans "prftData" n'était pas dans le XML, mais au lieu de cela était un champ de type entier holding de centre de profit id et effectuer la jointure.

    SELECT md.LName, md.FName, pc.ProfitCenterName
    FROM tblMainDataCenter md
    LEFT OUTER JOIN tblProfitCenter pc ON md.pcID = pc.prftData

C'est pour un projet où je travail et de la nécessité d'être en mesure de déplacer au-delà de cette. Normalement, je devrais être à l'apprentissage XML pour résoudre ce problème, mais le temps nous le permet pas. Jusqu'à ce que je reçois une chance d'apprendre le XML, je vous serais reconnaissant de toute aide.

OriginalL'auteur Nosharu | 2013-07-26