【发布时间】:2020-02-10 09:42:50
【问题描述】:
我试图从 SQL 表中获取 XML:
我的桌子
------------
-- Table1 --
------------
ID Flight1 Flight2
--------------------------
1 F0123 F0789
2 F0345 F0678
Query:
Select
A.[ID],
A.[Flight1] as "FlightDescription/Number",
A.[Flight2] as "FlightDescription/Number"
from
[Table1] A
for xml path('Flight'), root('Flights')
我的预期结果是:
<Flights>
<Flight>
<ID>1</ID>
<FlightDescription>
<Number>F0123</Number>
</FlightDescription>
<FlightDescription>
<Number>F0789</Number>
</FlightDescription>
</Flight>
<Flight>
<ID>2</ID>
<FlightDescription>
<Number>F0345</Number>
</FlightDescription>
<FlightDescription>
<Number>F0678</Number>
</FlightDescription>
</Flight>
</Flights>
但我得到的是这个:
<Flights>
<Flight>
<ID>1</ID>
<FlightDescription>
<Number>F0123F0789</Number>
</FlightDescription>
</Flight>
<Flight>
<ID>2</ID>
<FlightDescription>
<Number>F0345F0678</Number>
</FlightDescription>
</Flight>
</Flights>
我可以弄清楚...在我的表格中,每个 ID 都有超过 4 个航班号,所以我想知道是否有办法让所有这些都以我需要的方式。
提前致谢!
【问题讨论】:
-
你真的可以指定两次相同的列别名吗?
-
如果我指定不同的别名,我将在 FlightDescription
F0123 F0789 下得到,我不希望这样,每个号码应该是不同的航班描述。
标签: sql sql-server xml