Formel definieren (Dialogfeld) [Modell-Designer]

Wird zum Erstellen eines neuen, eine Formel enthaltenden Feldes verwendet. Beispiele für gültige Formeln finden Sie unter Verwenden von Funktionen (Berichts-Generator).

Optionen

  • Felder
    Verwenden Sie diese Registerkarte, um die Felder des Berichtsmodells zu ermitteln, die der Ausdruck enthalten soll. Doppelklicken Sie auf ein Feld, um es dem Ausdruck hinzuzufügen.
  • Funktionen
    Verwenden Sie diese Registerkarte, um die Funktion auszuwählen, die Sie in dem Ausdruck verwenden möchten. 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
    Verwenden Sie diese Option, um die Formel zu schreiben und zu bearbeiten.
  • Suchen
    Öffnet das Dialogfeld Suchen.
  • Hier aggregieren
    Wenn Sie auf einen im Formelfeld angezeigten Feldnamen doppelklicken, wird die Beziehung zwischen der primären Entität und der Entität des Feldes angezeigt. Klicken Sie, um dem Ausdruck an einer beliebigen Stelle des Modellpfades ein Aggregat hinzuzufügen.
  • Kein Filter angewendet
    Wenn Sie auf einen im Formelfeld angezeigten Feldnamen doppelklicken, wird die Beziehung zwischen der primären Entität und der Entität des Feldes angezeigt. Sie können an einer beliebigen Stelle des Modellpfades einen Filter 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.
  • Kurztasten für Funktionen
    Klicken Sie, um der Formel den im Formelfeld angezeigten Operator hinzuzufügen. Im Dialogfeld Formel definieren sind Kurztasten für die am häufigsten verwendeten Funktionen verfügbar. Sie können diese Operatoren jedoch auch aus der Registerkarte Funktionen auswählen. Es folgt eine Erklärung der einzelnen Kurztasten:

    + Addieren von zwei Werten.

    - Subtrahieren eines Wertes von einem anderen.

    * Multiplizieren von zwei Werten.

    / Dividieren von zwei Werten.

    & Verketten von zwei Werten.

    ( Beginn einer Berechnung.

    ) Ende einer Berechnung.

Funktionen

Im Folgenden werden die einzelnen in der Registerkarte Funktionen des Dialogfeldes Formel definieren enthaltenen Funktionen beschrieben.

Aggregat

Verwenden Sie zum Zusammenfassen einer Reihe von numerischen Werten die folgenden Funktionen.

  • SUMME
    Gibt die Summe aller Werte innerhalb des Ausdrucks zurück.

    Syntax

    SUM(aggregate)

    SUMME kann nur mit Feldern verwendet werden, die numerische Werte enthalten. NULL-Werte werden ignoriert.

  • DURCHSCHNITT
    Gibt den Durchschnitt (das arithmetische Mittel) aller Werte ungleich NULL innerhalb des Ausdrucks zurück.

    Syntax

    AVERAGE(aggregate)

    DURCHSCHNITT kann nur mit Feldern verwendet werden, die numerische Werte enthalten. NULL-Werte werden ignoriert.

  • MAX
    Gibt den größten Wert im Ausdruck zurück.

    Syntax

    MAX(aggregate)

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

  • MIN
    Gibt den kleinsten Wert im Ausdruck zurück.

    Syntax

    MIN(aggregate)

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

  • ANZAHL
    Gibt die Anzahl von Elementen ungleich NULL innerhalb einer Gruppe zurück.

    Syntax

    COUNT(aggregate)

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

  • ANZAHLUNTERSCHIEDL
    Gibt die Anzahl von unterschiedlichen Instanzen ungleich NULL eines Elements innerhalb einer Gruppe zurück.

    Syntax

    COUNTDISTINCT(aggregate)

  • STDABWEICHUNG
    Gibt die Standardabweichung von Werten ungleich NULL eines Elements zurück.

    Syntax

    STDEV(aggregate)

  • STDABWEICHUNGAUFFÜLL
    Gibt die Standardabweichung der Auffüllung von Werten ungleich NULL eines Elements zurück.

    Syntax

    STDEVP(aggregate)

  • VARIANZ
    Gibt die Varianz von Werten ungleich NULL eines Elements zurück.

    Syntax

    VAR(aggregate)

  • VARIANZAUFFÜLL
    Gibt die Auffüllungsvarianz von Werten ungleich NULL eines Elements zurück.

    Syntax

    VARP(aggregate)

Bedingt

Verwenden Sie zum Testen einer Bedingung folgende Funktionen.

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

    Syntax

    IF(condition, value_if_true, value_if_false)

    Die Bedingung muss ein Wert oder ein Ausdruck sein, der zu TRUE oder zu FALSE ausgewertet werden kann. Value_if_true steht für den Wert, der zurückgegeben wird, wenn die Bedingung TRUE ergibt. Value_if_false steht für den Wert, der zurückgegeben wird, wenn die Bedingung FALSE ergibt.

  • IN
    Bestimmt, ob ein Element zu einer Menge gehört.

    Syntax

    IN(item, set)

  • MEHRFACHBEDINGUNG
    Wertet eine Liste von Ausdrücken aus, und gibt den Wert des ersten Ausdrucks in der Liste zurück, der TRUE ergibt. Es können ein oder mehrere Bedingung/Wert-Paare angegeben werden.

    Syntax

    Switch(condition1, value1)

Konvertierung

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

  • GANZEZAHL
    Konvertiert einen Wert in eine ganze Zahl.

    Syntax

    INT(value)

  • DEZIMAL
    Konvertiert einen Wert in eine Dezimalzahl.

    Syntax

    DECIMAL(value)

  • GLEITKOMMAZAHL
    Konvertiert einen Wert in einen float-Datentyp.

    Syntax

    FLOAT(value)

  • TEXT
    Konvertiert einen numerischen Wert in Text.

    Syntax

    TEXT(value)

Datum und Uhrzeit

Verwenden Sie die folgenden Funktionen zum Anzeigen des Datums oder der Uhrzeit.

  • DATUM
    Gibt einen datetime-Wert für ein bestimmtes Jahr, einen Monat und einen Tag um 12:00:00 Uhr zurück.

    Syntax

    DATE(year, month, day)

  • NURDATUM
    Gibt das Jahr, den Monat und den Tag aus einem datetime-Wert zurück.

    Syntax

    DATEONLY(datetime)

  • DATUMZEIT
    Gibt das Jahr, den Monat, den Tag, die Stunde, die Minute und die Sekunde zurück.

    Syntax

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

  • JAHR
    Gibt das Jahr aus einem datetime-Wert zurück.

    Syntax

    YEAR(datetime)

  • QUARTAL
    Gibt das Kalenderquartal aus einem datetime-Wert zurück.

    Syntax

    QUARTER(datetime)

  • MONAT
    Gibt den Monat aus einem datetime-Wert zurück.

    Syntax

    MONTH(datetime)

  • TAG
    Extrahiert den Tag aus einem datetime-Wert.

    Syntax

    DAY(datetime)

  • STUNDE
    Extrahiert die Stunde aus einem datetime-Wert.

    Syntax

    HOUR(datetime)

  • MINUTE
    Extrahiert die Minute aus einem datetime-Wert.

    Syntax

    MINUTE(datetime)

  • SEKUNDE
    Extrahiert die Sekunde aus einem datetime-Wert.

    Syntax

    SECOND(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

    DAYOFYEAR(datetime)

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

    Syntax

    WEEK(datetime)

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

    Syntax

    DAYOFWEEK(datetime)

  • JETZT
    Gibt die aktuellen Werte für Datum und Uhrzeit zurück.

    Syntax

    NOW( )

  • HEUTE
    Gibt das aktuelle Datum zurück.

    Syntax

    TODAY( )

  • DATUMSDIFFERENZ
    Gibt die Differenz zwischen Startdatum/-zeit und Enddatum/-zeit zurück.

    Syntax

    DATEDIFF(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

    DATEADD(interval, units, datetime)

Logisch

Verwenden Sie zum Testen der Logik einer Bedingung folgende Funktionen.

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

    Syntax

    AND(logical, logical)

    Die Argumente müssen zu logischen Werten wie TRUE oder FALSE ausgewertet werden können oder 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

    OR(logical, logical)

    Die Argumente müssen zu logischen Werten wie TRUE oder FALSE ausgewertet werden können, oder Arrays oder Verweise mit logischen Werten sein. Wenn ein Array bzw. ein 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 einen bestimmten Wert nicht besitzt.

    Syntax

    NOT(logical)

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

Mathematisch

Verwenden Sie die folgenden Funktionen zum Manipulieren von numerischen Werten.

  • 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 vom Dezimaltrennzeichen abgeschnitten. Ist die Zahl negativ, wird sie links vom Dezimaltrennzeichen abgeschnitten.

    Syntax

    TRUNC(number, digits)

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

    Syntax

    ROUND(number, digits)

    Wenn die Anzahl Stellen größer 0 (null) ist, wird die Zahl auf die angegebene Anzahl von Dezimalstellen gerundet. Wenn die Anzahl Stellen 0 ist, wird die Zahl auf die nächste ganze Zahl gerundet. Wenn die Zahl kleiner 0 ist, wird sie links vom Dezimaltrennzeichen gerundet.

Operatoren

Arithmetische Operatoren

Zum Ausführen grundlegender mathematischer Operationen wie Addition, Subtraktion, Multiplikation sowie für das Kombinieren von Zahlen und das Erzeugen numerischer Ergebnisse können Sie die folgenden Operatoren verwenden.

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

    Syntax

    value + value

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

    Syntax

    value- value

  • * Multiplikation
    Hiermit werden Elemente multipliziert.

    Syntax

    value* value

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

    Syntax

    value/divisor

  • - Negation
    Hiermit wird das Vorzeichen von Elementen umgekehrt.

    Syntax

    -value

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

    Syntax

    value^power

Vergleichsoperatoren

Verwenden Sie die folgenden Operatoren, um zwei Werte zu vergleichen und einen logischen Wert von 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 zum Manipulieren von Text innerhalb des Berichts.

  • 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

    FIND(string, substring)

  • LINKS
    Gibt, von links ausgehend, die Zeichen einer Zeichenfolge zurück. Wenn Sie für das length-Argument innerhalb der Funktion einen Wert kleiner 0 angeben, ist das Verhalten nicht definiert.

    Syntax

    LEFT(string, length)

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

    Syntax

    LENGTH(string)

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

    Syntax

    LOWER(string)

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

    Syntax

    LTRIM(string)

  • ERSETZEN
    Gibt eine Zeichenfolge zurück, in der alle Instanzen einer Teilzeichenfolge durch eine andere Teilzeichenfolge ersetzt wurden.

    Syntax

    REPLACE(find, replace, string)

  • RECHTS
    Gibt, von rechts ausgehend, die Zeichen einer Zeichenfolge zurück. Wenn Sie für das length-Argument innerhalb der Funktion einen Wert kleiner 0 angeben, ist das Verhalten nicht definiert.

    Syntax

    RIGHT(string, length)

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

    Syntax

    RTRIM(string)

  • Text
    Konvertiert einen numerischen Wert in eine Zeichenfolge.

    Syntax

    TEXT(value)

  • Teilzeichenfolge
    Gibt eine Teilzeichenfolge innerhalb einer Zeichenfolge zurück. Wenn Sie für das length-Argument innerhalb der Funktion einen Wert kleiner 0 angeben, ist das Verhalten nicht definiert.

    Syntax

    SUBSTRING(string, start, length)

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

    Syntax

    UPPER(string)

Informationen

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

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

    Syntax

    GETUSERID()

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

    Syntax

    GETUSERCULTURE()

Siehe auch

Konzepte

Modell-Designer (F1-Hilfe)

Andere Ressourcen

Vorgehensweisen zum Modell-Designer
Arbeiten mit dem Modell-Designer
Arbeiten mit Rollen, Quellfeldern und Ausdrücken

Hilfe und Informationen

Informationsquellen für SQL Server 2005