Formel definieren (Dialogfeld) (Berichts-Generator)

Mithilfe dieses Dialogfeldes können Sie ein neues Feld mit einer Formel erstellen.

Optionen

  • Felder
    Mithilfe dieser Registerkarte können Sie nach Feldern innerhalb des Berichtsmodells suchen, die in den Ausdruck eingeschlossen werden sollen. Doppelklicken Sie auf das Feld, um es dem Ausdruck hinzuzufügen.
  • Funktionen
    Mithilfe dieser Registerkarte können Sie die Funktion auswählen, die in dem Ausdruck verwendet werden soll. Doppelklicken Sie auf die Funktion, um sie dem Ausdruck hinzuzufügen. Eine Beschreibung der einzelnen Funktionen finden Sie im folgenden Abschnitt.
  • Feldname
    Geben Sie einen Namen für den Ausdruck ein, den Sie erstellen.
  • Formel
    Hiermit erstellen und bearbeiten Sie die Formel.
  • Suchen
    Klicken Sie hier, um das Dialogfeld Suchen zu öffnen.
  • Abkürzende Funktionen
    Klicken Sie hier, um der im Dialogfeld Formel angezeigten Formel einen Operator hinzuzufügen. Das Dialogfeld Formel definieren enthält Abkürzungen für die am häufigsten verwendeten Funktionen. Sie können diese Operatoren jedoch auch auf der Registerkarte Funktionen auswählen. Es folgt eine Erklärung zu den einzelnen abkürzenden Funktionen.

    + Hiermit addieren Sie zwei Werte.

    - Hiermit subtrahieren Sie einen Wert von einem anderen Wert.

    * Hiermit multiplizieren Sie zwei Textwerte.

    / Hiermit dividieren Sie zwei Werte.

    & Hiermit verketten Sie zwei Werte.

    ( Hiermit starten Sie eine Berechnung.

    ) Hiermit beenden Sie eine Berechnung.

Optionen durch Klicken mit der rechten Maustaste

Diese Menüoptionen werden angezeigt, wenn Sie mit der rechten Maustaste auf die Formeln im Dialogfeld Formel oder auf den erweiterten Formelbereich klicken.

  • Erweitern
    Klicken Sie, um die Formel einschließlich der Beziehung zur Kontextentität anzuzeigen. Dies ist notwendig, wenn Sie filtern oder die Aggregationsebene angeben möchten.
  • Umbenennen
    Klicken Sie, um die im Dialogfeld Formel angezeigte Formel umzubenennen.
  • Hier aggregieren
    Klicken Sie auf den Feldnamen, um die Aggregationsebene zu ändern. Diese Option steht nur nach dem Erweitern der Formel zur Verfügung.
  • Kein Filter angewendet
    Wenn Sie auf einen im Dialogfeld Formel angezeigten Feldnamen klicken, wird die Beziehung zwischen der Entität, auf die sich die Formel bezieht, und dem Feld angezeigt. Sie können einen Filter an jeder beliebigen Stelle entlang des Modellpfades auf den Ausdruck anwenden. Klicken Sie, um einen Filter auf den Ausdruck anzuwenden, und klicken Sie dann auf Neuen Filter erstellen. Das Dialogfeld Daten filtern wird geöffnet.

Funktionen

In den folgenden Informationen werden die einzelnen Funktionen auf der Registerkarte Funktionen im Dialogfeld Formel definieren beschrieben.

Aggregate

Verwenden Sie die folgenden Funktionen, um einen Bereich mit numerischen Werten zusammenzufassen.

  • SUMME
    Gibt die Summe aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    SUMME(aggregate)

    SUMME kann ausschließlich für Felder mit numerischen Werten verwendet werden. NULL-Werte werden ignoriert.

  • DURCHSCHNITT
    Gibt den Durchschnitt (arithmetisches Mittel) aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    DURCHSCHNITT(aggregate)

    DURCHSCHNITT kann ausschließlich für Felder mit numerischen Werten verwendet werden. NULL-Werte werden ignoriert.

  • MAX
    Gibt das Maximum aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    MAX(aggregate)

    Bei Zeichenspalten findet MAX den höchsten Wert gemäß der Sortierreihenfolge. NULL-Werte werden ignoriert.

  • MIN
    Gibt das Minimum aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    MIN(aggregate)

    Bei Zeichenspalten findet MIN den niedrigsten Wert gemäß der Sortierreihenfolge. NULL-Werte werden ignoriert.

  • ANZAHL
    Gibt die Anzahl aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    ANZAHL(aggregate)

    ANZAHL gibt immer einen Wert vom Datentyp Int zurück.

  • ANZAHLUNTERSCHIEDL
    Gibt die Anzahl aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    ANZAHLUNTERSCHIEDL(aggregate)

  • STDABWEICHUNG
    Gibt die Standardabweichung aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    STDABWEICHUNG(aggregate)

  • STDABWEICHUNGAUFFÜLL
    Gibt die Standardabweichung der Auffüllung aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    STDABWEICHUNGAUFFÜLL(aggregate)

  • VARIANZ
    Gibt die Varianz aller Werte ungleich NULL in einer Reihe von Werten zurück.

    Syntax

    VARIANZ(aggregate)

  • VARIANZAUFFÜLL
    Gibt die Auffüllungsvarianz aller Werte ungleich NULL in einer Wertemenge zurück.

    Syntax

    VARIANZAUFFÜLL(aggregate)

Bedingte Anweisung

Verwenden Sie die folgenden Funktionen, um eine Bedingung zu testen.

  • FALLS
    Gibt einen Wert zurück, wenn Sie eine Bedingung angeben, die zu TRUE ausgewertet wird, und einen anderen Wert, wenn Sie eine Bedingung angeben, die zu FALSE ausgewertet wird.

    Syntax

    FALLS(condition, value_if_true, value_if_false)

    Die Bedingung muss zu TRUE oder FALSE ausgewertet werden. Value_if_true (Wert_falls_wahr) stellt den Wert dar, der zurückgegeben wird, wenn die Bedingung TRUE ist. Value_if_false (Wert_falls_falsch) stellt den Wert dar, der zurückgegeben wird, wenn die Bedingung FALSE ist.

  • IN
    Legt fest, ob ein Wert in einer Wertemenge vorhanden ist.

    Syntax

    IN(item, set)

  • MEHRFACHBEDINGUNG
    Wertet eine Liste von Ausdrücken aus und gibt den Wert eines Ausdrucks zurück, der dem ersten Ausdruck in der Liste zugeordnet ist, der TRUE ergibt. Es können ein oder mehrere Bedingung-Wert-Paare für einen Wechsel angegeben werden.

    Syntax

    MEHRFACHBEDINGUNG(condition1, value1…)

Konvertierung

Verwenden Sie die folgenden Funktionen, um einen Datentyp in einen anderen Datentyp zu konvertieren.

  • GANZEZAHL
    Konvertiert einen Wert in eine ganze Zahl.

    Syntax

    GANZEZAHL(value)

  • DEZIMAL
    Konvertiert einen Wert in eine Dezimalzahl.

    Syntax

    DEZIMAL(value)

  • GLEITKOMMAZAHL
    Konvertiert einen Wert in einen Gleitkommazahl-Datentyp.

    Syntax

    GLEITKOMMAZAHL(value)

  • TEXT
    Konvertiert einen numerischen Wert in Text.

    Syntax

    TEXT(value)

Datum und Zeit

Verwenden Sie die folgenden Funktionen, um Datum oder Uhrzeit anzuzeigen.

  • DATUM
    Gibt einen Datums-/Uhrzeitwert zurück, der das angegebene Jahr, den Monat und den Tag um 12:00:00 Uhr darstellt.

    Syntax

    DATUM(year, month, day)

  • NURDATUM
    Gibt einen Datums-/Uhrzeitwert zurück, der das angegebene Jahr, den Monat und den Tag darstellt.

    Syntax

    NURDATUM(datetime)

  • DATUMZEIT
    Gibt einen Datums-/Uhrzeitwert zurück, der das angegebene Jahr, den Monat, den Tag, die Minute und Sekunde darstellt.

    Syntax

    DATUMZEIT(year, month, day, hour, minute, second)

  • JAHR
    Gibt das Jahr eines datetime-Wertes zurück.

    Syntax

    JAHR(datetime)

  • QUARTAL
    Gibt das Kalenderquartal (1-4) des datetime-Wertes zurück.

    Syntax

    QUARTAL(datetime)

  • MONAT
    Gibt den Monat (1-12) aus einem datetime-Wert zurück.

    Syntax

    MONAT(datetime)

  • TAG
    Extrahiert den Tag aus einem datetime-Wert.

    Syntax

    TAG(datetime)

  • STUNDE
    Extrahiert die Stunde (0-23) aus einem datetime-Wert.

    Syntax

    STUNDE(datetime)

  • MINUTE
    Extrahiert die Minute aus einem datetime-Wert.

    Syntax

    MINUTE(datetime)

  • SEKUNDE
    Extrahiert die Sekunde aus einem datetime-Wert.

    Syntax

    SEKUNDE(datetime)

  • TAGDESJAHRES
    Gibt den Tag des Jahres aus dem datetime-Wert zurück. 1. Januar = 1 bis 31. Dezember = 366 (wobei ein Schaltjahr vorausgesetzt wird).

    Syntax

    TAGDESJAHRES(datetime)

  • WOCHE
    Gibt den numerischen Wert für die Woche innerhalb des Kalenderjahres zurück.

    Syntax

    WOCHE(datetime)

  • TAGDERWOCHE
    Gibt den Tag der Woche zurück, beginnend mit Montag. Montag = 1 bis Sonntag = 7.

    Syntax

    TAGDERWOCHE(datetime)

  • JETZT
    Gibt das aktuelle Datum und die aktuelle Uhrzeit zurück.

    Syntax

    JETZT( )

  • HEUTE
    Gibt das aktuelle Datum zurück.

    Syntax

    HEUTE( )

  • DATUMSDIFFERENZ
    Gibt die Differenz zwischen Start-datetime und End-datetime zurück.

    Syntax

    DATUMSDIFFERENZ(interval, datetime, datetime)

  • DATUMADDIEREN
    Gibt einen datetime-Wert zurück, der das Ergebnis der Addition der angegebenen Anzahl von Zeitintervalleinheiten mit dem ursprünglichen datetime-Wert ist.

    Syntax

    DATUMADDIEREN(interval, units, datetime)

Logische Operatoren

Verwenden Sie die folgenden Funktionen, um die Logik einer Bedingung zu testen.

  • UND
    Gibt TRUE zurück, wenn alle Argumente TRUE sind, und gibt FALSE zurück, wenn mindestens ein Argument FALSE ist.

    Syntax

    UND(logical, logical)

    Die Argumente müssen zu logischen Werten wie TRUE oder FALSE ausgewertet werden, oder die Argumente müssen Arrays oder Verweise mit logischen Werten sein. Wenn ein Array oder Verweisargument Text oder leere Zellen enthält, werden diese Werte ignoriert.

  • ODER
    Gibt TRUE zurück, wenn ein Argument TRUE ist, und gibt FALSE zurück, wenn alle Argumente FALSE sind.

    Syntax

    ODER(logical, logical)

    Die Argumente müssen zu logischen Werten wie TRUE oder FALSE ausgewertet werden oder in Arrays oder Verweisen mit logischen Werten enthalten sein. Wenn ein Array oder Verweis Text oder leere Zellen enthält; werden diese Werte ignoriert.

  • NICHT
    Kehrt den Wert des Arguments um. Verwenden Sie NICHT, wenn Sie sicherstellen möchten, dass eine Klausel ungleich einem bestimmten Wert ist.

    Syntax

    NICHT(logical)

    Wenn der Wert FALSE ist, gibt NICHT TRUE zurück; wenn der Wert TRUE ist, gibt NICHT FALSE zurück.

Mathematische Funktionen

Verwenden Sie die folgenden Funktionen, um numerische Werte zu bearbeiten.

  • MOD
    Gibt den Rest zurück, der nach der Division einer Zahl durch einen Divisor übrig bleibt. Der Divisor darf nicht 0 sein.

    Syntax

    MOD(number, divisor)

  • ABSCHNEIDEN
    Schneidet eine Zahl um die angegebene Anzahl von Stellen ab. Ist die Zahl positiv, wird sie rechts von der Dezimalstelle abgeschnitten. Ist die Zahl negativ, wird sie links von der Dezimalstelle abgeschnitten.

    Syntax

    ABSCHNEIDEN(number, digits)

  • RUNDEN
    Rundet eine Zahl auf eine angegebene Anzahl von Stellen.

    Syntax

    RUNDEN(number, digits)

    Ist die Anzahl der Stellen größer als 0 (Null), wird die Zahl auf die angegebene Anzahl von Dezimalstellen gerundet. Ist die Anzahl der Stellen gleich 0, wird die Zahl auf die nächste ganze Zahl gerundet. Ist die Anzahl kleiner als 0, wird die Zahl links vom Dezimalkomma gerundet.

Operatoren

Arithmetische Operatoren

Verwenden Sie die folgenden Operatoren, um einfache mathematische Operationen wie Addition, Subtraktion und Multiplikation durchzuführen, Zahlen zu kombinieren und numerische Ergebnisse zu berechnen.

  • + Addition
    Hiermit werden mindestens zwei Elemente zusammengefügt.

    Syntax

    Wert + Wert

  • - Subtraktion
    Hiermit wird ein Element von einem anderen Element subtrahiert.

    Syntax

    Wert - Wert

  • * Multiplikation
    Hiermit werden Elemente multipliziert.

    Syntax

    Wert* Wert

  • / Division
    Hiermit werden Elemente dividiert. Der Divisor darf nicht 0 sein.

    Syntax

    Wert / Divisor

  • - Negieren
    Hiermit wird das Vorzeichen des Wertes geändert.

    Syntax

    -Wert

  • ^ Potenzierung
    Hiermit wird ein Wert in eine Potenz erhoben (Potenzierung).

    Syntax

    Wert^Potenz

Vergleichsoperatoren

Verwenden Sie die folgenden Operatoren, um zwei Werte zu vergleichen und einen der logischen Werte TRUE oder FALSE zurückzugeben.

  • = Gleich
    Hiermit werden zwei Werte gleichgesetzt. TRUE, wenn value1 gleich value2 ist.

    Syntax

    value1= value2

  • <> Ungleich
    Hiermit wird angegeben, dass zwei Werte nicht identisch sind. TRUE, wenn value1 nicht mit value2 identisch ist.

    Syntax

    value1 <> value2

  • > Größer als
    Hiermit wird angegeben, dass ein Wert größer als ein anderer Wert ist. True, wenn Value1 größer als Value2 ist.

    Syntax

    value1 > value2

  • >= Größer als oder gleich
    Hiermit wird angegeben, dass ein Wert größer als oder gleich einem anderen Wert ist. TRUE, wenn value1 größer als oder gleich value2 ist.

    Syntax

    value1 >= value2

  • < Kleiner als
    Hiermit wird angegeben, dass ein Wert kleiner als ein anderer Wert ist. TRUE, wenn value1 kleiner als value2 ist.

    Syntax

    value1 < value2

  • <= Kleiner als oder gleich
    Hiermit wird angegeben, dass ein Wert kleiner als oder gleich einem anderen Wert ist. TRUE, wenn value1 kleiner als oder gleich value2 ist.

    Syntax

    value1 <= value2

Text

Verwenden Sie die folgenden Funktionen, um Text in einem Bericht zu bearbeiten.

  • VERKETTEN (&)
    Fasst zwei Zeichenfolgen zusammen. Die zweite Zeichenfolge wird an die erste Zeichenfolge angefügt.

    Syntax

    string & string

  • SUCHEN
    Position der ersten Instanz einer Zeichenfolge.

    Syntax

    SUCHEN(string, substring)

  • LINKS
    Gibt, von links ausgehend, die Zeichen einer Zeichenfolge zurück.

    Syntax

    LINKS(string, length)

  • LÄNGE
    Gibt die Anzahl von Zeichen in einer Zeichenfolge zurück.

    Syntax

    LÄNGE(string)

  • KLEINBUCHSTABEN
    Konvertiert eine Zeichenfolge von Großbuchstaben in Kleinbuchstaben.

    Syntax

    KLEINBUCHSTABEN(string)

  • LSCHNEIDEN
    Gibt eine Zeichenfolge zurück, wobei die führenden Leerzeichen entfernt werden.

    Syntax

    LSCHNEIDEN(string)

  • ERSETZEN
    Gibt eine Zeichenfolge für alle Instanzen einer ersetzten Teilzeichenfolge zurück.

    Syntax

    ERSETZEN(find, replace, string)

  • RECHTS
    Gibt, von rechts ausgehend, die Zeichen einer Zeichenfolge zurück.

    Syntax

    RECHTS(string, length)

  • RSCHNEIDEN
    Gibt eine Zeichenfolge zurück, wobei die nachfolgenden Leerzeichen entfernt werden.

    Syntax

    RSCHNEIDEN(string)

  • Text
    Konvertiert einen numerischen Wert in eine Zeichenfolge.

    Syntax

    TEXT(value)

  • TEILZEICHENFOLGE
    Gibt eine Teilzeichenfolge innerhalb einer Zeichenfolge zurück.

    Syntax

    TEILZEICHENFOLGE(string, start, length)

  • GROSSBUCHSTABEN
    Konvertiert eine Zeichenfolge von Kleinbuchstaben in Großbuchstaben.

    Syntax

    GROSSBUCHSTABEN(string)

Informationen

Verwenden Sie die folgenden Funktionen, um allgemeine Informationen zu Benutzern zurückzugeben.

  • BENUTZERID
    Gibt die ID zurück, mit der der Benutzer auf die Daten zugegriffen hat.

    Syntax

    BENUTZERID()

  • BENUTZERGEBIETSSCHEMA
    Gibt die Sprache bzw. das Gebietsschema des Benutzers zurück.

    Syntax

    BENUTZERGEBIETSSCHEMA()

Siehe auch

Konzepte

F1-Hilfe zum Berichts-Generator

Andere Ressourcen

Verwenden von Formeln (Berichts-Generator)
Verwenden von Funktionen (Berichts-Generator)

Hilfe und Informationen

Informationsquellen für SQL Server 2005