У меня есть SQL-запрос:
SELECT ShipVia, SUM(Freight)
FROM Orders
GROUP BY ShipVia
, который возвращает указанные ниже значения из базы данных доступа
Ship Via TotalFreight
1 $16,185.33
2 $28,244.85
3 $20,512.51
Я пытаюсь преобразовать это в xquery (используя xquery 1.0)
Пока у меня есть это,
xquery version "1.0";
for $x in doc("Orders.xml")/dataroot/Orders
return
<OrderDetails>
{
$x/ShipVia,
<TotalFreight>{sum($x/Freight)}</TotalFreight>
}
</OrderDetails>
Это, однако, выводит каждый отдельный заказ вместе со стоимостью фрахта, как если бы я сделал
SELECT ShipVia, Freight
FROM Orders
в SQL
Как сделать так, чтобы xquery фактически добавлял каждый из них, как это делает команда SQL
Это три порядка из файла Orders.xml, например
<dataroot>
<Orders>
<ShipVia>1</ShipVia>
<Freight>32.38</Freight>
</Orders>
<Orders>
<ShipVia>1</ShipVia>
<Freight>11.61</Freight>
</Orders>
<Orders>
<ShipVia>2</ShipVia>
<Freight>65.83</Freight>
</Orders>
</dataroot>
РЕДАКТИРОВАТЬ: раздели ненужныеУзлы (добавлен дубликат)