Udostępnij za pośrednictwem


Funkcja Ostatnia (XQuery)

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

fn:last() as xs:integer

Remarks

W programie SQL Server FN:Last() można używać tylko w kontekście predykat zależne od kontekstu.W szczególności to można używać tylko wewnątrz nawiasów kwadratowych)[ ]).

Przykłady

W tym temacie przedstawiono przykłady XQuery przed XML wystąpienia, które są przechowywane w różnych XML typu kolumny bazy danych AdventureWorks.Aby uzyskać ogólne informacje o każdej z tych kolumn zobacz xml Data Type Representation in the AdventureWorks Database.

A.Za pomocą funkcja XQuery last() pobrać dwa ostatnie kroki produkcji

Następująca kwerenda pobiera dwa ostatnie kroki produkcji dla określonego modelu produktu.Wartość, liczba kroków produkcji, zwracane przez Last() Funkcja jest używana w tej kwerendy w celu pobrania 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 //AWMI:root//AWMI:Location)[1]/AWMI:step[last()] Zwraca liczbę kroków produkcji. Ta wartość jest używana do pobierania ostatni krok produkcji w jego środku pracy.

To jest wynik:

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>