Riferimento a Entity SQL

Questa sezione contiene articoli di riferimento su Entity SQL. In questo articolo vengono riepilogati e raggruppati gli operatori Entity SQL per categoria.

Operatori aritmetici

Gli operatori aritmetici eseguono operazioni matematiche su due espressioni di uno o più tipi di dati numerici. Nella tabella seguente vengono elencati gli operatori aritmetici di Entity SQL:

Operatore Utilizzo
+ (addizione) Addizione.
/ (divisione) Divisione.
% (modulo) Restituisce il resto di una divisione.
* (Moltiplicazione) Moltiplicazione.
- (negativo) Negazione.
- (sottrazione) Sottrazione.

Funzioni canoniche

Le funzioni canoniche sono supportate da tutti i provider di dati e possono essere usate da tutte le tecnologie di query. Nella tabella seguente sono elencate le funzioni canoniche:

Funzione Type
Funzioni canoniche di aggregazione di Entity SQL Vengono illustrate le funzioni canoniche di aggregazione di Entity SQL.
Funzioni matematiche canoniche Vengono illustrate le funzioni canoniche matematiche di Entity SQL.
Funzioni stringa canoniche Vengono illustrate le funzioni canoniche stringa di Entity SQL.
Funzioni data e ora canoniche Vengono illustrate le funzioni canoniche di data e ora di Entity SQL.
Funzioni bit per bit canoniche Vengono illustrate le funzioni canoniche bit per bit di Entity SQL.
Altre funzioni canoniche Vengono illustrate le funzioni non classificate come bit per bit, di data e ora, per i valori stringa, matematiche o di aggregazione.

Operatori di confronto

Gli operatori di confronto sono definiti per i tipi seguenti: Byte, Int16, Int32, Int64, Double, Single, Decimal, String, DateTime, Date, Time, DateTimeOffset. La promozione dei tipi impliciti si verifica per gli operandi prima dell'applicazione dell'operatore di confronto. Gli operatori di confronto producono sempre valori booleani. Quando almeno uno degli operandi è null, il risultato è null.

L'uguaglianza e l'ineguaglianza sono definite per qualsiasi tipo di oggetto con un'identità, ad esempio il tipo Boolean. Gli oggetti non primitivi con identità sono considerati uguali se condividono la stessa identità. Nella tabella seguente vengono elencati gli operatori di confronto di Entity SQL:

Operator Descrizione
= (uguale a) Consente di confrontare due espressioni per verificare se sono uguali.
> (maggiore di) Consente di confrontare due espressioni per determinare se l'espressione a sinistra ha un valore maggiore di quella a destra.
>= (maggiore o uguale a) Consente di confrontare due espressioni per determinare se l'espressione a sinistra ha un valore maggiore o uguale a quella a destra.
IS [NOT] NULL Consente di determinare se un'espressione di query è null.
< (minore di) Consente di confrontare due espressioni per determinare se l'espressione a sinistra ha un valore minore di quella a destra.
<= (minore o uguale a) Consente di confrontare due espressioni per determinare se l'espressione a sinistra ha un valore minore o uguale a quella a destra.
[NOT] BETWEEN Determina se un'espressione restituisce un valore incluso in un intervallo specificato.
\!= (diverso da) Consente di confrontare due espressioni per determinare se l'espressione di sinistra è diversa da quella di destra.
[NOT] LIKE Determina se una stringa di caratteri specifica corrisponde a un modello specificato.

Operatori logici e di espressione Case

Gli operatori logici verificano la veridicità di una condizione. L'espressione CASE valuta un set di espressioni booleane per determinare il risultato. Nella tabella seguente sono inclusi gli operatori logici e di espressione CASE:

Operator Descrizione
&& (AND logico) AND logico.
! (NOT logico) NOT logico.
|| (OR logico) OR logico.
CASE Valuta un set di espressioni booleane per determinare il risultato.
THEN Risultato di una clausola WHEN quando restituisce true.

Operatori di query

Gli operatori di query sono usati per definire espressioni di query che restituiscono dati dell'entità. Nella tabella seguente sono elencati gli operatori di query:

Operatore Utilizzo
FROM Specifica la raccolta usata nelle istruzioni SELECT.
GROUP BY Specifica i gruppi nei quali devono essere inseriti gli oggetti restituiti da un'espressione (SELECT) di query.
GroupPartition Restituisce una raccolta di valori di argomento, estratta dalla partizione di gruppo alla quale è correlata l'aggregazione.
HAVING Specifica una condizione di ricerca per un gruppo o una funzione di aggregazione.
LIMIT Usato con la clausola ORDER BY per eseguire il paging fisico.
ORDER BY Specifica l'ordinamento usato per gli oggetti restituiti in un'istruzione SELECT.
SELECT Specifica gli elementi nella proiezione che sono restituiti da una query.
SKIP Usato con la clausola ORDER BY per eseguire il paging fisico.
TOP Specifica che verrà restituito solo il primo set di righe del risultato della query.
WHERE Filtra condizionatamente i dati che sono restituiti da una query.

Operatori di riferimento

Un riferimento è un puntatore logico (chiave esterna) a un'entità specifica in un set di entità specifico. In Entity SQL sono supportati gli operatori seguenti per costruire o annullare i riferimenti, nonché per eseguire la navigazione nei riferimenti:

Operatore Utilizzo
CREATEREF Consente di creare riferimenti a un'entità in un set di entità.
DEREF Consente di dereferenziare un valore di riferimento e restituisce il risultato di tale operazione.
KEY Estrae la chiave di un riferimento o di un'espressione di entità.
NAVIGATE Consente di eseguire la navigazione da un tipo di entità a un altro
REF Restituisce un riferimento a un'istanza dell'entità.

Operatori Set

In Entity SQL sono disponibili diversi importanti operatori Set, tra cui operatori Set simili agli operatori Transact-SQL seguenti: UNION, INTERSECT, EXCEPT e EXISTS. In Entity SQL sono inoltre supportati operatori per l'eliminazione dei duplicati (SET), la verifica dell'appartenenza (IN) e i join (JOIN). Nella tabella seguente vengono elencati gli operatori Set di Entity SQL:

Operatore Utilizzo
ANYELEMENT Estrae un elemento da una raccolta multivalore.
EXCEPT Restituisce una raccolta di tutti i valori distinti dell'espressione di query a sinistra dell'operando EXCEPT che non vengono restituiti anche dall'espressione di query a destra dell'operando EXCEPT.
[NOT] EXISTS Determina se una raccolta è vuota.
FLATTEN Converte una raccolta di raccolte in una raccolta bidimensionale.
[NOT] IN Determina se un valore corrisponde a qualsiasi valore in una raccolta.
INTERSECT Restituisce una raccolta di tutti i valori distinti restituiti da entrambe le espressioni di query a sinistra e a destra dell'operando INTERSECT.
OVERLAPS Determina se due raccolte includono elementi comuni.
SET Usato per convertire una raccolta di oggetti in un set restituendo una nuova raccolta da cui sono stati rimossi tutti i duplicati.
UNION Combina i risultati di due o più query in una singola raccolta.

Operatori di tipo

In Entity SQL sono disponibili operazioni che consentono di eseguire query sul tipo di un'espressione (valore) e di costruire e modificare il tipo. Nella tabella seguente sono elencati gli operatori usati per eseguire operazioni sui tipi:

Operatore Utilizzo
CAST Consente di convertire un'espressione da un tipo di dati a un altro.
COLLECTION Usato in un'operazione FUNCTION per dichiarare una raccolta di tipi di entità o tipi complessi.
IS [NOT] OF Determina se il tipo di un'espressione è del tipo specificato o di uno dei sottotipi.
OFTYPE Restituisce una raccolta di oggetti da un'espressione di query appartenente a un tipo specifico.
Costruttore di tipo denominato Usato per creare istanze di tipi di entità o tipi complessi.
MULTISET Crea un'istanza di un multiset da un elenco di valori.
ROW Consente di costruire record anonimi strutturalmente tipizzati da uno o più valori.
TREAT Consente di trattare un oggetto di un tipo di base particolare come oggetto del tipo derivato specificato.

Altri operatori

Nella tabella seguente sono elencati altri operatori Entity SQL:

Operatore Utilizzo
+ (Concatenazione di stringhe) Usato per concatenare stringhe in Entity SQL.
. (accesso a membro) Usato per accedere al valore di una proprietà o di un campo di un'istanza di tipo di modello concettuale strutturale.
-- (commento) Include i commenti Entity SQL.
FUNCTION Definisce una funzione inline che può essere eseguita in una query Entity SQL.

Vedi anche