ich einen Spaltenwert als ein XML-Knoten wie so zu bekommen versuche:SQL FOR XML FÜR PATH Spalte Wert
FOR XML PATH(V_CONSTAT_ACTUAL_DATES.JOB_NUMBER), Type
aber ich bekomme diese Fehlermeldung:
Incorrect syntax near 'V_CONSTAT_ACTUAL_DATES'. Expecting STRING or TEXT_LEN
ist, was ich versuche nicht möglich zu erreichen? Hier
ist die vollständige SQL-Abfrage:
SELECT
(
SELECT V_CONSTAT_ACTUAL_DATES.JOB_NUMBER AS 'Key',
(
SELECT
(
SELECT
(
SELECT
(
SELECT
CONVERT(date, V_CONSTAT_ACTUAL_DATES.ID120) AS 'actualFinish',
CONVERT(date, V_CONSTAT_BASE_DATES.ID120) AS 'baseLineStart'
FOR XML PATH(''), Type
)
FOR XML PATH('baseStartFinishList'), Type
)
FOR XML PATH(''), Type
),
(
SELECT CONVERT(date, V_CONSTAT_ACTUAL_DATES.DATE_TO_END) AS 'closingDate'
FOR XML PATH(''), Type
),
(
SELECT DATEDIFF(dd,V_CONSTAT_BASE_DATES.ID67,V_CONSTAT_ACTUAL_DATES.DATE_TO_END)-1 AS 'DaysOfConstruction'
FOR XML PATH(''), Type
),
(
SELECT DATEDIFF(dd,GETDATE(),V_CONSTAT_ACTUAL_DATES.DATE_TO_END) AS 'DaysToClosing'
FOR XML PATH(''), Type
),
(
SELECT
IsNull(V_CONSTAT_ACTUAL_DATES.IDNOTES2, ' ') AS 'notes'
FOR XML PATH(''), Type
),
(
SELECT DATEDIFF(dd,V_CONSTAT_BASE_DATES.ID187,V_CONSTAT_PROJ_DATES.ID187) AS 'ScheduleVariance'
FOR XML PATH(''), Type
)
FOR XML PATH('V_CONSTAT_PROJ_DATES.JOB_NUMBER'), Type
)
FOR XML PATH('KeyValue'), Type
)
FROM
((V_CONSTAT_PROJ_DATES V_CONSTAT_PROJ_DATES INNER JOIN V_CONSTAT_ACTUAL_DATES V_CONSTAT_ACTUAL_DATES
ON
V_CONSTAT_PROJ_DATES.JOB_NUMBER=V_CONSTAT_ACTUAL_DATES.JOB_NUMBER)
INNER JOIN
V_CONSTAT_BASE_DATES V_CONSTAT_BASE_DATES
ON
(V_CONSTAT_ACTUAL_DATES.JOB_NUMBER=V_CONSTAT_BASE_DATES.JOB_NUMBER) AND (V_CONSTAT_PROJ_DATES.JOB_NUMBER=V_CONSTAT_BASE_DATES.JOB_NUMBER))
INNER JOIN
V_CONSTAT_SCH_DATES V_CONSTAT_SCH_DATES
ON
((V_CONSTAT_BASE_DATES.JOB_NUMBER=V_CONSTAT_SCH_DATES.JOB_NUMBER) AND (V_CONSTAT_PROJ_DATES.JOB_NUMBER=V_CONSTAT_SCH_DATES.JOB_NUMBER))
AND (V_CONSTAT_ACTUAL_DATES.JOB_NUMBER=V_CONSTAT_SCH_DATES.JOB_NUMBER)
WHERE V_CONSTAT_ACTUAL_DATES.AREA_DESC = 'Fairgrounds Phase 5' AND V_CONSTAT_ACTUAL_DATES.DATE_TO_END>=GETDATE()
ORDER BY V_CONSTAT_ACTUAL_DATES.DATE_TO_END
FOR XML PATH(''), ROOT('Root')
Ich versuche Spaltenwert von JOB_NUMBER als Knotennamen
Hier ist ein Beispiel meiner aktuellen XML zu erhalten:
<KeyValue>
<Key>FA50104</Key>
<V_CONSTAT_PROJ_DATES.JOB_NUMBER>
<baseStartFinishList>
<baseLineStart>2016-06-06</baseLineStart>
</baseStartFinishList>
<closingDate>2016-05-26</closingDate>
<DaysOfConstruction>237</DaysOfConstruction>
<DaysToClosing>1</DaysToClosing>
<notes> </notes>
<ScheduleVariance>0</ScheduleVariance>
</V_CONSTAT_PROJ_DATES.JOB_NUMBER>
</KeyValue>
Was ich versuche zu tun, ist die V_CONSTAT_PROJ_DATES.JOB_NUMBER als Schlüsselwert (FA50104)
Post gesamten Code – TheGameiswar
FOR XML PATH ('V_CONSTAT_ACTUAL_DATES.JOB_NUMBER'), Typ –
Der Wert innerhalb 'PATH()' hat ein ** Stringliteral ** sein - nicht verweisen eine Variable oder Spalte nach Name. Dieses Zeichenfolgenliteral definiert den ** Namen ** des äußersten XML-Knotens für jede Zeile in Ihrer XML-Ausgabe. –