sql >> データベース >  >> RDS >> Sqlserver

OPENXML データを内部結合クエリに結合する方法は?

    主張しますか OpenXMLの使用について?古くてレガシーです - 通常、ネイティブ XQuery 関数を使用する方がはるかに簡単です .

    次のようにしてみてください:

    DECLARE @Employees TABLE (EmployeeID INT, Title VARCHAR(20), FirstName VARCHAR(20),LastName VARCHAR(20))
    
    INSERT INTO @Employees VALUES(1, 'Engineering', 'Mike', 'Brown')
    INSERT INTO @Employees VALUES(2, 'Programmer', 'Yves', 'Anthony')
    
    DECLARE @doc XML 
    SET @doc = '<ROOT>
                  <Employee EmployeeID = "1"  EmpStatus = "Full Time"/>
                  <Employee EmployeeID = "2"  EmpStatus ="Part Time" />
                </ROOT>'
    
    ;WITH XmlCTE AS
    (
        SELECT
            EmpID = Empl.value('@EmployeeID', 'int'),
            EmpStatus = Empl.value('@EmpStatus', 'varchar(10)')
        FROM @doc.nodes('/ROOT/Employee') AS Tbl(Empl)
    )
    SELECT 
        e.*, x.EmpStatus 
    FROM 
        @Employees e
    INNER JOIN  
        xmlcte x ON e.EmployeeID = x.EmpID
      

    これにより、次の出力が得られます:



    1. PHP5.5.xで廃止されたMySQL拡張機能

    2. LEFT JOINを使用して、結合された1つの行のみを選択します

    3. C#で別のフォームからメソッドを呼び出す

    4. SQLServerを使用してLucene.Netを構成する