Partilhar via


Função last (XQuery)

Retorna o número de itens na sequência que está sendo processada atualmente. Especificamente, retorna o índice de inteiro do último item na sequência. O primeiro item na sequência tem um valor de índice de 1.

Sintaxe

fn:last() as xs:integer

Comentários

No SQL Server, fn:last() pode ser usado somente no contexto de um predicado dependente de contexto. Mais precisamente, ele só pode ser usado entre parênteses ([ ]).

Exemplos

Este tópico fornece exemplos de XQuery em instâncias XML armazenadas em várias colunas do tipo xml no banco de dados AdventureWorks2008R2. Para obter uma visão geral de cada uma dessas colunas, consulte Representação de tipo de dados xml no banco de dados do AdventureWorks2008R2.

A. Uso da função last () XQuery para recuperar as últimas duas etapas de fabricação

A consulta a seguir recupera as duas últimas etapas do processo de fabricação de um modelo de produto específico. O valor, o número de etapas de fabricação, retornado pela função last() é usado nessa consulta para recuperar as duas últimas etapas de fabricação.

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;

Na consulta precedente, a função last() em //AWMI:root//AWMI:Location)[1]/AWMI:step[last()] retorna o número de etapas de fabricação. Esse valor é usado para recuperar a última etapa de fabricação no local do centro de trabalho.

Este é o resultado:

ProductModelID Result

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

7 <LastTwoManuSteps>

<Last-1Step>

Quando concluir, inspecione as formas em busca de defeitos por

Especificação de inspeção.

</Last-1Step>

<LastStep>Remova os quadros da ferramenta e coloque-os

no compartimento Concluído ou Rejeitado conforme apropriado.

</LastStep>

</LastTwoManuSteps>

Consulte também

Referência