Ich versuche, die folgende SQL auszuführen:aus zwei Tabellen in einer XML-Auswahl
SELECT * FROM Table2
INNER JOIN
(SELECT * FROM Table1
INNER JOIN
(SELECT MAX(DateTime) AS LastMeasurement, MeasurementId as LastMeasurementId
FROM Table1 GROUP BY MeasurementId) as lastMeasurement
ON (Table1.MeasurementId = lastMeasurement.LastMeasurementId)
AND (Table1.DateTime = lastMeasurement.LastMeasurement)) as hLastMeasurement
ON Table2.Id = hLastMeasurement.Id
ORDER BY Table2.Id ASC
Dies funktioniert gut, aber weil ich das Ergebnis im XML-Format erhalten möchten und hatte die Geographie Säule zu werfen , ich habe die erste Zeile geändert:
SELECT Name, Description, CAST(Location as nvarchar(MAX)) FROM Table2
und hinzugefügt, um diese Zeile am Ende:
FOR XML RAW ('Object'), ROOT ('Objects'), ELEMENTS
Jetzt gettin ich bin g das XML, aber nur mit Daten aus Table2.
Jeder Ratschlag ist willkommen.
was RDBMS? [Oracle XMLAGG] (http://docs.oracle.com/cd/B19306_01/appdev.102/b14259/xdb13gen.htm#i1031169), [die DB2-XMLAGG] (http://publib.boulder.ibm.com/infocenter /db2luw/v9/index.jsp?topic=%2Fcom.ibm.db2.udb.admin.doc%2Fdoc%2Fr0022183.htm) oder [XMLGROUP] (http://publib.boulder.ibm.com/infocenter/db2luw /v9r5/index.jsp?topic=%2Fcom.ibm.db2.luw.sql.ref.doc%2Fdoc%2Fr0050588.html), ... – Aprillion
Sind Name, Beschreibung und Standort alle in Tabelle 2? Ich vermisse etwas, aber es sieht so aus, als hätten Sie in Ihrer SELECT-Anweisung keine Spalten aus Tabelle 1, weshalb sie nicht in der XML-Datei erscheinen. – GarethD
Ja, das sind sie. In Zeile 3 wähle ich die Daten aus Tabelle 1 aus und füge sie zum Ergebnis hinzu. Die Sache ist, dass das erste Skript gut funktioniert, es ist der Zusammenbruch der ersten Zeile, der den Unterschied gemacht hat. – toy4fun