Abfrage:Update von Temp-Tabelle
SELECT ID, T.c.value('@Address', 'nvarchar(20)') as Address
INTO #TMP
FROM TABLE1
CROSS APPLY XMLData.nodes('/Document') AS T(c)
UPDATE TABLE1
SET HomeAddress = (SELECT TOP 1 t.Address
FROM #TMP t
WHERE t.ID = ID)
Vor allem muß ich Daten aus einem XML-Feld in den normalen Feldern innerhalb der gleichen Tabelle kopieren.
Fragen:
- Gibt es Gründe, warum alle Datensätze, die auf Tabelle 1 homeaddress bekommen?
- Ist wirklich Cursor der einzige Weg, um den Wert auf Table1 zu aktualisieren?
möglich Duplikat [Aktualisieren einer Tabelle in SQL Server mit JOIN?] (Http: //stackoverflow.com/questions/1604091/update-a-table-using-join-in-sql-server) –