2 Stimmen

SQL oder C#: Schleife durch die Werte eines Feldes und Einfügen in ein anderes

Dies ist ein Wert in einem Feld namens DataFields in einer Tabelle namens objects:

<data><styleid>287634</styleid><c1001>S</c1001><c1002>S</c1002><c1004>S</c1004></data>

Ich muss das tun:

Select into objectsindex (product, typeid, classid, objectid, FieldName, FieldValue)

Values

select
product,
typeid,
classid,
objectid,
FieldName = 'c1001',
FieldValue = CONVERT(xml, DataFields).value('(/data/c1001/node())[1]', 'nvarchar(1)')
from objects where typeid = 45

für jeden XML-Knoten in diesem Feld (außer dem <data></data> y <styleid></styleid> Knoten) und für jeden Datensatz der Tabelle "Objekte" mit typeid = 45.

Die Werte "c1001" und /c1001/ sind Variablen, die aus dem Feld DataFields gezogen werden müssen.

Ich habe c# in den Titel gesetzt, weil ich davon ausgehe, dass viele von Ihnen mir sagen werden, dass dies keine Aufgabe für SQL allein ist. Aber ich weiß, dass es einige echte SQL-Genies da draußen gibt, also hoffe ich auf eine SQL-Lösung.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X