Funzione last (XQuery)

Restituisce il numero di elementi della sequenza da elaborare. In particolare, restituisce l'indice di valori integer dell'ultimo elemento della sequenza. Il valore di indice del primo elemento della sequenza è 1.

Sintassi

fn:last() as xs:integer

Osservazioni

In SQL Server, è possibile utilizzare la funzione fn:last() solo nell'ambito di un predicato dipendente dal contesto. In particolare, può essere utilizzata solo tra parentesi ([ ]).

Esempi

In questo argomento vengono forniti esempi di utilizzo del linguaggio XQuery sulle istanze XML archiviate in diverse colonne di tipo xml nel database AdventureWorks2008R2. Per una panoramica su ognuna di queste colonne, vedere Rappresentazione del tipo di dati XML nel database AdventureWorks2008R2.

A. Utilizzo della funzione XQuery last() per recuperare le ultime due fasi di produzione

La query seguente recupera le ultime due fasi di produzione relative a un modello di prodotto specifico. Per recuperare le ultime due fasi di produzione, in questa query viene utilizzato il valore restituito dalla funzione last(), ovvero il numero di fasi di produzione.

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;

Nella query precedente, la funzione last() in //AWMI:root//AWMI:Location)[1]/AWMI:step[last()] restituisce il numero di fasi di produzione. Tale valore viene utilizzato per recuperare l'ultima fase di produzione nel centro di lavorazione.

Risultato:

ProductModelID Result

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

7 <LastTwoManuSteps>

<Ultimo-1Step>

In caso di completamento, controllare i form per i difetti per

Specifica dell'ispezione.

<Ultimo-1Step>

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

bin Completato o Rifiutato, a seconda dei casi.

</LastStep>

</LastTwoManuSteps>

Vedere anche

Riferimento