결과가 동일하게 유지되도록 다음 코드를 xquery로 변환하려고합니다. 나는 customers.xml
각 고객에 대한Group in xquery
SELECT
c.CompanyName, SUM(o.freight) AS [Total Freight Costs]
FROM
Customers c, Orders o
WHERE
c.CustomerID = o.CustomerID
GROUP BY
CompanyName
테스트 데이터를 총 운송 비용을 계산하려고하고
<dataroot>
<Customers>
<CustomerID>ALFKI</CustomerID>
<CompanyName>Alfreds Futterkiste</CompanyName>
<ContactName>Maria Anders</ContactName>
<ContactTitle>Sales Representative</ContactTitle>
<Address>Obere Str. 57</Address>
<City>Berlin</City>
<PostalCode>12209</PostalCode>
<Country>Germany</Country>
<Phone>030-0074321</Phone>
<Fax>030-0076545</Fax>
</Customers>
<Customers>
<CustomerID>ANATR</CustomerID>
<CompanyName>Ana Trujillo Emparedados y helados</CompanyName>
<ContactName>Ana Trujillo</ContactName>
<ContactTitle>Owner</ContactTitle>
<Address>Avda. de la Constitución 2222</Address>
<City>México D.F.</City>
<PostalCode>05021</PostalCode>
<Country>Mexico</Country>
<Phone>(5) 555-4729</Phone>
<Fax>(5) 555-3745</Fax>
</Customers>
</dataroot>
orders.xml의
<dataroot>
<Orders>
<OrderID>10248</OrderID>
<CustomerID>WILMK</CustomerID>
<EmployeeID>5</EmployeeID>
<OrderDate>1996-07-04T00:00:00</OrderDate>
<RequiredDate>1996-08-01T00:00:00</RequiredDate>
<ShippedDate>1996-07-16T00:00:00</ShippedDate>
<ShipVia>3</ShipVia>
<Freight>32.38</Freight>
<ShipName>Vins et alcools Chevalier</ShipName>
<ShipAddress>59 rue de l'Abbaye</ShipAddress>
<ShipCity>Reims</ShipCity>
<ShipPostalCode>51100</ShipPostalCode>
<ShipCountry>France</ShipCountry>
</Orders>
</dataroot>
이 무엇입니까 다음과 같이 주문은 나는 지금까지 가지고있다
for $o in doc("Orders.xml")/dataroot/Orders,
$c in doc("Customers.xml")/dataroot/Customers[CustomerID = $o/CustomerID]
return
<OrderDetails>
{
$c/CompanyName,
sum($o/Freight)
}
</OrderDetails>
XQuery 3.0은 초안에서만 FLWOR 표현식에서 명시 적 그룹화 지원을 사용합니다. 어떤 데이터베이스를 사용하고 있습니까? 그것은 XQuery 3.0을 지원합니까? –
그래, 1998 데이터베이스 (Northwind)를 사용하여 나는 그것을 지원할 것이라고 매우 의심 스럽다. 나는 그것에 대해 읽었으며 SQL 기능에 더 가까워지고있는 것처럼 보입니다. –