Condividi tramite


Espressioni logiche (XQuery)

Si applica a: SQL Server

XQuery supporta gli operatori logici e e o .

expression1 and expression2  
expression1 or expression2  

Le espressioni di test, expression1,``expression2, in SQL Server possono generare una sequenza vuota, una sequenza di uno o più nodi o un singolo valore booleano. In base al risultato, il valore booleano effettivo viene determinato nel modo seguente:

  • Se l'espressione di prova restituisce una sequenza vuota, il risultato dell'espressione è False.

  • Se l'espressione di prova restituisce un singolo valore booleano, il risultato dell'espressione è tale valore.

  • Se l'espressione di prova restituisce una sequenza costituita da uno o più nodi, il risultato dell'espressione è True.

  • Negli altri casi, viene restituito un errore statico.

L'operatore logico e e o viene quindi applicato ai valori booleani risultanti delle espressioni con la semantica logica standard.

La query seguente recupera dal catalogo prodotti le immagini piccole con angolo anteriore, l'elemento <Picture> , per un modello di prodotto specifico. Si noti che, per ogni documento di descrizione del prodotto, nel catalogo è possibile archiviare uno o più foto del prodotto con attributi diversi, ad esempio le dimensioni e l'angolazione.

SELECT CatalogDescription.query('  
     declare namespace PD="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelDescription";  
     for $F in /PD:ProductDescription/PD:Picture[PD:Size="small"   
                                                 and PD:Angle="front"]  
     return   
         $F   
    ') as Result  
FROM  Production.ProductModel  
where ProductModelID=19  

Risultato:

<PD:Picture   
  xmlns:PD="https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelDescription">  
  <PD:Angle>front</PD:Angle>  
  <PD:Size>small</PD:Size>  
  <PD:ProductPhotoID>31</PD:ProductPhotoID>  
</PD:Picture>  
  

Vedi anche

Espressioni XQuery