Entity SQL-Referenz
Dieser Abschnitt enthält Referenzartikel zu Entity SQL. In diesem Artikel werden die Entity SQL-Operatoren nach Kategorie zusammengefasst und gruppiert.
Arithmetische Operatoren
Arithmetische Operatoren führen mathematische Operationen an zwei Ausdrücken aus, die vom selben oder von unterschiedlichen numerischen Datentypen sind. In der folgenden Tabelle sind die arithmetischen Operatoren von Entity SQL aufgeführt:
Operator | Verwendung |
---|---|
+ (Addition) | Addition. |
/ (Dividieren) | Division. |
% (Modulus) | Gibt den Rest einer Division zurück. |
* (Multiplikation) | Multiplikation. |
- (Negativ) | Negation. |
- (Subtraktion) | Subtraktion. |
Kanonische Funktionen
Kanonische Funktionen werden von allen Datenanbietern unterstützt und können von allen Abfragetechnologien verwendet werden. In der folgenden Tabelle sind die kanonischen Funktionen aufgeführt:
Funktion | type |
---|---|
Kanonische Aggregatfunktionen in Entity SQL | Hier werden kanonische Aggregatfunktionen in Entity SQL erläutert. |
Kanonische Mathematikfunktionen | Hier werden kanonische Mathematikfunktionen in Entity SQL erläutert. |
Kanonische Zeichenfolgefunktionen | Hier werden kanonische Zeichenfolgenfunktionen in Entity SQL erläutert. |
Kanonische Funktionen für Datum und Zeit | Hier werden kanonische Datums- und Zeitfunktionen in Entity SQL erläutert. |
Bitweise kanonische Funktionen | Hier werden bitweise kanonische Funktionen in Entity SQL erläutert. |
Andere kanonische Funktionen | Erläutert Funktionen, die keine bitweisen Funktionen, Datums- und Uhrzeitfunktionen, Zeichenfolgenfunktionen, mathematische Funktionen oder Aggregatfunktionen sind. |
Vergleichsoperatoren
Vergleichsoperatoren sind für die folgenden Typen definiert: Byte
, Int16
, Int32
, Int64
, Double
, Single
, Decimal
, String
, DateTime
, Date
, Time
und DateTimeOffset
. Für die Operanden wird vor der Anwendung des Vergleichsoperators eine implizite Typhöherstufung durchgeführt. Vergleichsoperatoren geben stets boolesche Werte zurück. Das Ergebnis ist null
, wenn mindestens einer der Operanden den Wert null
hat.
Gleichheit und Ungleichheit sind für jeden Objekttyp definiert, der über eine Identität verfügt, wie z. B. für den Boolean
-Typ. Nicht primitive Objekte mit einer Identität werden als gleich betrachtet, wenn sie über die gleiche Identität verfügen. In der folgenden Tabelle sind die Vergleichsoperatoren von Entity SQL aufgeführt:
Operator | Beschreibung |
---|---|
= (Ist gleich) | Überprüft zwei Ausdrücke auf Gleichheit. |
> (Größer als) | Vergleicht zwei Ausdrücke, um zu ermitteln, ob der linke Ausdruck größer als der rechte Ausdruck ist. |
>= (Größer als oder gleich) | Vergleicht zwei Ausdrücke, um zu ermitteln, ob der linke Ausdruck größer oder gleich dem rechten Ausdruck ist. |
IS [NOT] NULL | Ermittelt, ob ein Abfrageausdruck den Wert NULL hat. |
< (Kleiner als) | Vergleicht zwei Ausdrücke, um zu ermitteln, ob der linke Ausdruck kleiner als der rechte Ausdruck ist. |
<= (Kleiner als oder gleich) | Vergleicht zwei Ausdrücke, um zu ermitteln, ob der linke Ausdruck kleiner oder gleich dem rechten Ausdruck ist. |
[NOT] BETWEEN | Ermittelt, ob der Ergebniswert eines Ausdrucks in einem angegebenen Bereich liegt. |
\!= (Ungleich) | Vergleicht zwei Ausdrücke, um zu ermitteln, ob sich der linke Ausdruck vom rechten Ausdruck unterscheidet. |
[NOT] LIKE | Bestimmt, ob eine bestimmte Zeichenfolge mit einem angegebenen Muster übereinstimmt. |
Logische Operatoren und CASE-Ausdrucksoperatoren
Logische Operatoren testen den Wahrheitswert einer Bedingung. Der CASE-Ausdruck wertet eine Reihe von booleschen Ausdrücken aus, um das Ergebnis zu bestimmen. In der folgenden Tabelle sind die CASE-Ausdrucksoperatoren und die logischen Operatoren aufgeführt:
Operator | Beschreibung |
---|---|
&& (Logisches AND) | Logisches AND. |
! (Logisches NOT) | Logisches 'NOT' |
|| (Logical OR) | Logisches OR. |
CASE | Wertet eine Reihe von booleschen Ausdrücken aus, um das Ergebnis zu bestimmen. |
THEN | Das Ergebnis einer WHEN-Klausel, wenn sie als „true“ ausgewertet wird. |
Abfrageoperatoren
Abfrageoperatoren werden verwendet, um Abfrageausdrücke zu definieren, die Entitätsdaten zurückgeben. In der folgenden Tabelle werden die Abfrageoperatoren aufgelistet:
Operator | Verwendung |
---|---|
FROM | Gibt die in SELECT-Anweisungen verwendete Sammlung an. |
GROUP BY | Gibt Gruppen an, in denen von einem Abfrageausdruck (SELECT) zurückgegebene Objekte platziert werden sollen. |
GroupPartition | Gibt eine Auflistung von Argumentwerten zurück, die von der Gruppenpartition projiziert wurde, auf die sich das Aggregat bezieht. |
HAVING | Gibt eine Suchbedingung für eine Gruppe oder ein Aggregat an. |
LIMIT | Wird mit der ORDER BY-Klausel zum physikalischen Paging verwendet. |
ORDER BY | Legt die Sortierreihenfolge für Objekte fest, die von einer SELECT-Anweisung zurückgegeben werden. |
SELECT | Gibt die Elemente in der Projektion an, die von einer Abfrage zurückgegeben werden. |
SKIP | Wird mit der ORDER BY-Klausel zum physikalischen Paging verwendet. |
TOP | Gibt an, dass nur die erste Zeilengruppe aus dem Abfrageergebnis zurückgegeben wird. |
WHERE | Filtert bedingt von einer Abfrage zurückgegebene Daten. |
Verweisoperatoren
Ein Verweis ist ein logischer Zeiger (Fremdschlüssel) auf eine bestimmte Entität in einer bestimmten Entitätenmenge. Entity SQL unterstützt folgende Operatoren zum Konstruieren, Dekonstruieren und Navigieren von Verweisen:
Operator | Verwendung |
---|---|
CREATEREF | Erstellt Verweise auf eine Entität in einer Entitätenmenge. |
DEREF | Dereferenziert einen Verweiswert und erstellt das Ergebnis dieser Dereferenzierung. |
KEY | Extrahiert den Schlüssel eines Verweises oder eines Entitätsausdrucks. |
NAVIGATE | Ermöglicht Ihnen, über die Beziehung von einem Entitätstyp zu einem anderen zu navigieren. |
REF | Gibt einen Verweis auf eine Entitätsinstanz zurück. |
Mengenoperatoren
Entity SQL stellt eine Reihe von leistungsstarken Mengenoperatoren zur Verfügung. Dies schließt festgelegte, den Transact-SQL-Operatoren ähnliche Operatoren ein, z. B. UNION, INTERSECT, EXCEPT und EXISTS. Entity SQL unterstützt auch Operatoren zur Beseitigung von Duplikaten (SET), Mitgliedschaftstests (IN) und Verknüpfungen (JOIN). In der folgenden Tabelle sind die Entity SQL-Mengenoperatoren aufgeführt:
Operator | Verwendung |
---|---|
ANYELEMENT | Extrahiert ein Element aus einer mehrwertigen Auflistung. |
EXCEPT | Gibt eine Sammlung der vom Abfrageausdruck auf der linken Seite des EXCEPT-Operanden zurückgegebenen und unterschiedlichen Werte zurück, die nicht zusätzlich vom Abfrageausdruck auf der rechten Seite des EXCEPT-Operanden zurückgegeben werden. |
[NOT] EXISTS | Bestimmt, ob eine Auflistung leer ist. |
FLATTEN | Konvertiert eine Auflistung von Auflistungen in eine vereinfachte Auflistung. |
[NOT] IN | Bestimmt, ob ein Wert mit irgendeinem Wert in einer Auflistung übereinstimmt. |
INTERSECT | Gibt eine Auflistung aller unterschiedlicher Werte zurück, die sowohl vom Abfrageausdruck auf der linken als auch dem auf der rechten Seite des INTERSECT-Operands zurückgegeben werden. |
OVERLAPS | Bestimmt, ob zwei Auflistungen über gemeinsame Elemente verfügen. |
SET | Wird verwendet, um eine Auflistung von Objekten in eine Menge zu konvertieren, indem eine neue Auflistung zurückgegeben wird, aus der alle doppelten Elemente entfernt wurden. |
UNION | Fasst die Ergebnisse von zwei oder mehr Abfragen in einer Auflistung zusammen. |
Typoperatoren
Entity SQL stellt Vorgänge bereit, mit denen der Typ eines Ausdrucks (Werts) erstellt, abgefragt und bearbeitet werden kann. In der folgenden Tabelle sind Operatoren aufgeführt, die zum Arbeiten mit Typen verwendet werden.
Operator | Verwendung |
---|---|
CAST | Konvertiert einen Ausdruck von einem Datentyp in einen anderen. |
COLLECTION | Wird in einem FUNCTION-Vorgang verwendet, um eine Sammlung von Entitätstypen oder komplexen Typen zu deklarieren. |
IS [NOT] OF | Ermittelt, ob der Typ eines Ausdrucks vom angegebenen Typ oder einem seiner Untertypen ist. |
OFTYPE | Gibt eine Auflistung der Objekte von einem Abfrageausdruck eines bestimmten Typs zurück. |
Konstruktoren benannter Typen | Wird verwendet, um Instanzen von Entitätstypen oder komplexen Typen zu erstellen. |
MULTISET | Erstellt eine Instanz einer Multimenge aus einer Liste von Werten. |
ROW | Erstellt anonyme, strukturell typisierte Datensätze aus einem oder mehreren Werten. |
TREAT | Behandelt ein Objekt eines bestimmten Basistyps als Objekt des angegebenen abgeleiteten Typs. |
Andere Operatoren
In der folgenden Tabelle sind weitere Entity SQL-Operatoren aufgeführt:
Operator | Verwendung |
---|---|
+ (Zeichenfolgenverkettung) | Wird verwendet, um Zeichenfolgen in Entity SQL zu verketten. |
. (Memberzugriff) | Wird verwendet, um auf den Wert einer Eigenschaft oder eines Feld einer Instanz des strukturellen konzeptionellen Modelltyps zuzugreifen. |
-- (Kommentar) | Schließt Entity SQL-Kommentare ein. |
FUNCTION | Definiert eine Inlinefunktion, die in einer Entity SQL-Abfrage ausgeführt werden kann. |