Udostępnij za pośrednictwem


Funkcja last (XQuery)

Zwraca liczbę elementów w sekwencji, który jest aktualnie przetwarzane.W szczególności zwraca indeks całkowitą ostatni element w sekwencji.Pierwszy element w sekwencji ma wartość indeksu 1.

Składnia

fn:last() as xs:integer

Uwagi

W programie SQL Server fn:last() mogą być używane tylko w kontekście predykat zależne od kontekstu.W szczególności go należy używać tylko wewnątrz nawiasów kwadratowych ([ ]).

Przykłady

W tym temacie przedstawiono przykłady XQuery przeciwko wystąpień XML, które są przechowywane w różnych xml Wpisz kolumn w AdventureWorks2008R2 bazy danych.Przegląd tych kolumn, zobacz XML reprezentacji typu danych w bazie danych AdventureWorks2008R2.

A.Używanie funkcja XQuery last() do pobierania dwa ostatnie kroki produkcji

Następująca kwerenda pobiera dwa ostatnie kroki wytwarzania dla określonego modelu produktu.Wartość, liczba kroków produkcji, zwrócony przez last() funkcja jest używana w tej kwerendzie pobrać dwa ostatnie kroki produkcji.

SELECT ProductModelID, Instructions.query(' 
declare namespace AWMI="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelManuInstructions";
  <LastTwoManuSteps>
   <Last-1Step> 
     { (/AWMI:root/AWMI:Location)[1]/AWMI:step[(last()-1)]/text() }
   </Last-1Step>
   <LastStep> 
     { (/AWMI:root/AWMI:Location)[1]/AWMI:step[last()]/text() }
   </LastStep>
  </LastTwoManuSteps>
') as Result
FROM Production.ProductModel
WHERE ProductModelID=7;

W powyższym kwerendy last() funkcja w //AWMI:root//AWMI:Location)[1]/AWMI:step[last()] zwraca liczbę kroków produkcji.Ta wartość jest używana do pobierania ostatni etap wytwarzania w miejscu pracy Centrum.

Jest to wynikiem:

ProductModelID Result

-------------- -------------------------------------

7 <LastTwoManuSteps>

<Last-1Step>

When finished, inspect the forms for defects per

Inspection Specification .

</Last-1Step>

<LastStep>Remove the frames from the tool and place them

in the Completed or Rejected bin as appropriate.

</LastStep>

</LastTwoManuSteps>

Zobacz także

Odwołanie