---
schema_version: "1"
id: adce0dad0ca104b55dea50e13d210172b485ed4e2a41a086f3fc30665c37ef14
title: Referenz zu Tableau Prep-Funktionen
collection: tableau
version: current
locale: de-de
portal_url: https://docs.salesforce.com/tableau/current/de-de/prep/prep_function_reference.md
canonical_url: https://help.tableau.com/current/prep/de-de/prep_function_reference.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 752c1c7037a37f7e6c283aba2218f46e173ed5286ad12d8b0ec73ea84efe663a
description: Reference for Tableau Prep calculation functions across categories.
---
[Zum Hauptinhalt springen](#main-content)

# Referenz zu Tableau Prep-Funktionen

Die Tableau Prep-Berechnungsfunktionen ermöglichen Ihnen, berechnete Felder zu verwenden, um mit den bereits in Ihrer Datenquelle vorhandenen Daten neue Daten zu erstellen.

### Zahlenfunktionen

<table style="width: 100%;" class="simple-table"><colgroup><col style="width: 276px;"><col></colgroup><tbody><tr><th>Syntax</th><th>Beschreibung</th></tr><tr><td><code>ABS(number)</code></td><td>Gibt den absoluten Wert der jeweiligen Zahl zurück.<p>Beispiele:</p><p><code>ABS(-7) = 7
</code></p><p><code>ABS([Budget Variance])</code></p>Gibt den absoluten Wert für alle im Feld "Budget Variance" (Budgetabweichung) enthaltenen Zahlen zurück.</td></tr><tr><td><code>ACOS(number)</code></td><td>Gibt den Arkuskosinus einer Zahl zurück. Das Ergebnis wird im Bogenmaß (Radiant) angegeben.<p>Beispiel:</p><p><code>ACOS(-1) = 3.14159265358979</code></p></td></tr><tr><td><code>ASIN(number)</code></td><td>Gibt den Arkussinus einer Zahl zurück. Das Ergebnis wird im Bogenmaß (Radiant) angegeben.<p>Beispiel:</p><p><code>ASIN(1) = 1.5707963267949</code></p></td></tr><tr><td><code>ATAN(number)</code></td><td>Gibt den Arkustangens einer Zahl zurück. Das Ergebnis wird im Bogenmaß (Radiant) angegeben.<p>Beispiel:</p><p><code>ATAN(180) = 1.5652408283942</code></p></td></tr><tr><td><code>ATAN2(y number, x number)</code></td><td>Gibt den Arkustangens zweier Zahlen (<code>x</code> und <code>y</code>) zurück. Das Ergebnis wird im Bogenmaß (Radiant) angegeben.<p>Beispiel:</p><p><code>ATAN2(2, 1) = 1.10714871779409</code></p></td></tr><tr><td><code>CEILING(number</code>)</td><td>Rundet eine Zahl auf die nächste Ganzzahl desselben Werts oder größer auf.<p>Beispiel:</p><p><code>CEILING(3.1415) = 4</code></p></td></tr><tr><td><code>COS(number)</code></td><td>Gibt den Kosinus eines Winkels zurück. Geben Sie den Winkel in Bogenmaßen ein.<p>Beispiel:</p><p><code>COS(PI( ) /4) = 0.707106781186548</code></p></td></tr><tr><td><code>COT(angle)</code></td><td>Gibt den Kotangens eines Winkels zurück. Geben Sie den Winkel in Bogenmaßen ein.<p>Beispiel:</p><p><code>COT(PI( ) /4) = 1
</code></p></td></tr><tr><td><code>DIV(integer1, integer2)</code></td><td>Gibt den Ganzzahl-Teil einer Division zurück, bei der <code> integer1</code> durch <code>integer2</code> geteilt wird.<p>Beispiel:</p><p><code>DIV(11,2) = 5
</code></p></td></tr><tr><td><code>EXP(number)</code></td><td>Gibt "e" potenziert mit der jeweiligen Zahl zurück.<p>Beispiele:</p><p><code>EXP(2) = 7.389
EXP(-[Growth Rate]*[Time])</code></p></td></tr><tr><td><code>FLOOR(number)</code></td><td>Rundet eine Zahl auf die nächste Ganzzahl desselben Werts oder kleiner ab.<p>Beispiel:</p><p><code>FLOOR(3.1415) = 3</code></p></td></tr><tr><td><code>HEXBINX(number, number)</code></td><td>Ordnet eine x-, y-Koordinate der x-Koordinate der nächsten hexagonalen Partition zu. Die Partitionen verfügen über eine Seitenlänge von 1, daher müssen die Eingaben möglicherweise entsprechend skaliert werden.<p>Beispiel:</p><p><code>HEXBINX([Longitude], [Latitude])</code></p></td></tr><tr><td><code>HEXBINY(number, number)</code></td><td>Ordnet eine x-, y-Koordinate der y-Koordinate der nächsten hexagonalen Partition zu. Die Partitionen verfügen über eine Seitenlänge von 1, daher müssen die Eingaben möglicherweise entsprechend skaliert werden.<p>Beispiel:</p><p><code>HEXBINY([Longitude], [Latitude])</code></p></td></tr><tr><td><code>LN(number)</code></td><td><p>Gibt den natürlichen Logarithmus einer Zahl zurück. Gibt Null zurück, wenn die Zahl kleiner als oder gleich&nbsp;0 ist.</p><p>Beispiel:</p><p><code>LN(EXP(5)) = 5</code></p></td></tr><tr><td><code>LOG(number [, base]</code>)</td><td><p>Gibt den Logarithmus einer Zahl zur Basis zurück. Sofern kein Wert für die Basis angegeben ist, wird der Logarithmus zur Basis 10 berechnet.</p><p>Beispiel:</p><p><code>LOG(256, 2) = 8</code></p></td></tr><tr><td><code>MAX(number, number)</code></td><td>Gibt den Maximalwert der zwei Argumente zurück, die vom selben Typ sein müssen. Wenn eines der Argumente NULL ist, wird null zurückgegeben. <code>MAX </code>kann bei einer Aggregationsberechnung auch auf ein einzelnes Feld angewendet werden.<p>Beispiele:</p><p><code>MAX(4,7)</code><br><code>MAX(Sales,Profit)</code><br><code>MAX([First Name],[Last Name])</code></p></td></tr><tr><td><code>MIN(number, number)</code></td><td>Gibt den Minimalwert der zwei Argumente zurück, die vom selben Typ sein müssen. Wenn eines der Argumente NULL ist, wird null zurückgegeben. <code>MIN </code>kann bei einer Aggregationsberechnung auch auf ein einzelnes Feld angewendet werden.<p>Beispiele:</p><p><code>MIN(4,7)
</code></p><p><code>MIN(Sales,Profit)</code></p><p><code>MIN([First Name],[Last Name])
</code></p></td></tr><tr><td><code>PI( )</code></td><td><p>Gibt die numerische Konstante Pi (Kreiszahl) zurück: 3.14159.</p><p>Beispiel:</p><p><code>PI() = 3.14159265358979</code></p></td></tr><tr><td><code>POWER(number, power)</code></td><td>Potenziert die Zahl mit dem Exponenten.<p>Beispiele:</p><p><code>POWER(5,2) = 52 = 25
POWER(Temperature, 2)</code></p><p>Sie können auch das Symbol ^ verwenden:</p><p><code>5^2 = POWER(5,2) = 25</code></p></td></tr><tr><td><code>RADIANS(number)</code></td><td>Wandelt eine in Grad angegebene Zahl in Bogenmaß (Radiant) um.<p>Beispiel:</p><p><code>RADIANS(180) = 3.14159</code></p></td></tr><tr><td><code>ROUND(number, [decimals])</code></td><td>Rundet eine Zahl auf eine bestimmte Anzahl an Dezimalstellen. Das Dezimal-Argument gibt an, wie viele dezimale Genauigkeitspunkte im Endergebnis einbezogen werden. Fehlt diese Einstellung, so wird die Zahl auf die nächste ganze Zahl gerundet.<p>Beispiel:</p><p>In diesem Beispiel wird jeder Umsatzwert auf eine Ganzzahl gerundet:</p><p><code>ROUND(Sales)</code></p></td></tr><tr><td><code>SIGN(number)</code></td><td>Gibt das Vorzeichen einer Zahl zurück. Die folgenden Rückgabewerte sind möglich: -1, wenn die Zahl negativ ist; 0, wenn die Zahl 0 (null) ist; 1, wenn die Zahl positiv ist.<p>Beispiel:</p><p>Wenn der Durchschnittswert des Felds "Profit" negativ ist, gilt:</p><p><code>SIGN(AVG(Profit)) = -1</code></p></td></tr><tr><td><code>SIN(number)</code></td><td>Gibt den Sinus eines Winkels zurück. Geben Sie den Winkel in Bogenmaßen ein.<p>Beispiele:</p><p><code>SIN(0) = 1.0</code></p><p><code>SIN(PI( )/4) = 0.707106781186548</code></p></td></tr><tr><td><code>SQRT(number)</code></td><td>Gibt die Quadratwurzel einer Zahl zurück.<p>Beispiel:</p><p><code>SQRT(25) = 5
</code></p></td></tr><tr><td><code>SQUARE(number)</code></td><td>Gibt das Quadrat einer Zahl zurück.<p>Beispiel:</p><p><code>SQUARE(5) = 25</code></p></td></tr><tr><td><code>TAN(number</code>)</td><td><p>Gibt den Tangens eines Winkels zurück. Geben Sie den Winkel in Bogenmaßen ein.</p><p>Beispiel:</p><p><code>TAN(PI ( )/4) = 1.0</code></p></td></tr><tr><td><code>ZN(expression)</code></td><td><p>Gibt den Ausdruck zurück, sofern er nicht null ist; anderenfalls wird 0 zurückgegeben. Nutzen Sie diese Funktion, um den Wert 0 zu verwenden anstelle von NULL-Werten.</p><p>Beispiel:</p><p><code>ZN([Profit]) = [Profit]</code></p></td></tr></tbody></table>

### Zeichenfolgenfunktionen

<table style="width: 100%;" class="simple-table"><colgroup><col style="width: 276px;"><col></colgroup><tbody><tr><th>Syntax</th><th>Beschreibung</th></tr><tr><td><code>ASCII(string)</code></td><td>Gibt den ASCII-Code für das erste Zeichen einer Zeichenfolge zurück.<p>Beispiel:</p><p><code>ASCII('A') = 65</code></p></td></tr><tr><td><code>CHAR(number)</code></td><td>Gibt das Zeichen für die ASCII-codierte Zahl zurück.<p>Beispiel:</p><p><code>CHAR(65) = 'A'</code></p></td></tr><tr><td><code>CONTAINS(string, substring)</code></td><td>Gibt TRUE zurück, wenn die Zeichenfolge die angegebene Teilzeichenfolge enthält.<p>Beispiel:</p><p><code>CONTAINS(“Calculation”, “alcu”) = true</code></p></td></tr><tr><td><code>ENDSWITH(string, substring)</code></td><td>Gibt TRUE zurück, wenn die Zeichenfolge mit der angegebenen Teilzeichenfolge (<code>substring</code>) endet. Nachfolgende Leerzeichen werden ignoriert.<p>Beispiel:</p><p><code>ENDSWITH(“Tableau”, “leau”) = true</code></p></td></tr><tr><td><code>FIND(string, substring, [start])</code></td><td>Gibt die Index-Position von <code>substring </code>in der Zeichenfolge oder 0 zurück, wenn die Unterzeichenfolge nicht gefunden wird. Wenn das optionale Argument "start" hinzugefügt wird, ignoriert die Funktion sämtliche <code>substring </code>-Instanzen, die vor der Indexposition "start" auftreten. Das erste Zeichen in der Zeichenfolge ist Position&nbsp;1.<p>Beispiele:</p><p><code>FIND("Calculation", "alcu") = 2</code></p></td></tr><tr><td><code>FINDNTH(string, substring, occurrence)</code></td><td>Gibt die Position des n-ten Vorkommens einer Unterzeichenfolge in einer angegebenen Zeichenfolge zurück, wobei n durch das Argument "occurrence" definiert wird.<p>Beispiel:</p><p><code>FINDNTH("Calculation", "a", 2) =7</code></p></td></tr><tr><td><code>ISDATE(string)</code></td><td><p>Gibt "true" zurück, wenn eine angegebene Zeichenfolge ein gültiges Datum darstellt.</p><p>Beispiel:</p><p><code>ISDATE("2004-04-15") = True
</code></p></td></tr><tr><td><code>LEFT(string, number)</code></td><td>Gibt den linken Teil einer Zeichenfolge mit der angegebenen Anzahl an Zeichen zurück.<p>Beispiel:</p><p><code>LEFT("Matador", 4) = "Mata"
</code></p></td></tr><tr><td><code>LEN(string)</code></td><td>Gibt die Länge der Zeichenfolge zurück.<p>Beispiel:</p><p><code>LEN("Matador") = 7
</code></p></td></tr><tr><td><code>LOWER(string)</code></td><td>Gibt eine Zeichenfolge ausschließlich in Kleinbuchstaben zurück.<p>Beispiel:</p><p><code>LOWER("ProductVersion") = "productversion"</code></p></td></tr><tr><td><code>LTRIM(string)</code></td><td>Gibt die Zeichenfolge zurück und entfernt dabei alle vorgestellten Leerzeichen.<p>Beispiel:</p><p><code>Example: LTRIM(" Sales") = "Sales"</code></p></td></tr><tr><td><code>(MID(string, start, [length])</code></td><td>Gibt die Zeichenfolge zurück und beginnt dabei bei der Index-Position "start". Das erste Zeichen in der Zeichenfolge ist Position&nbsp;1. Wird das optionale Argument length hinzugefügt, enthält die zurückgegebene Zeichenfolge nur die angegebene Anzahl an Zeichen.<p>Beispiele:</p><p><code>MID("Calculation", 2) = "alculation"</code></p><p><code>MID("Calculation", 2, 5) ="alcul"</code></p></td></tr><tr><td><code>PROPER(string)</code></td><td>Konvertiert eine Textzeichenfolge so, dass der erste Buchstabe jedes Wortes groß geschrieben wird und die restlichen Buchstaben klein geschrieben werden. Leerzeichen und nicht-alphanumerische Zeichen (z.&nbsp;B. Interpunktionszeichen) fungieren ebenfalls als Trennzeichen.<p>Beispiel:</p><p><code>PROPER("PRODUCT name") = "Product Name"
</code></p></td></tr><tr><td><code>REGEXP_EXTRACT(string, pattern)</code></td><td>Gibt eine Teilzeichenfolge der angegebenen Zeichenfolge zurück, die mit der Erfassungsgruppe innerhalb des regulären Ausdrucksmusters übereinstimmt. Das reguläre Ausdrucksmuster erfordert genau eine Erfassungsgruppe.<p>Beispiel:</p><p><code>REGEXP_EXTRACT('abc 123', '[a-z]+\\s+(\\d+)') = '123'</code></p></td></tr><tr><td><code>REGEXP_EXTRACT_NTH(string, pattern, index)</code></td><td>Gibt unter Verwendung des regulären Ausdrucksmusters eine Unterzeichenfolge der angegebenen Zeichenfolge zurück. Die Unterzeichenfolge wird der n-ten Erfassungsgruppe zugeordnet, wobei n dem angegebenen Index entspricht.<p>Beispiel:</p><p><code>REGEXP_EXTRACT_NTH('abc 123', '([a-z]+)\\s+(\\d+)', 2) = '123'</code></p></td></tr><tr><td><code>REGEXP_MATCH(string, pattern)</code></td><td>Gibt "true" zurück, wenn eine Unterzeichenfolge der bereitgestellte Zeichenfolge mit dem regulären Ausdrucksmuster übereinstimmt.<p>Beispiel:</p><p><code>REGEXP_MATCH('-([1234].[ The.Market ])-', '\\[\\s*(\\w*\\.)(\\w*\\s*\\])') = true</code></p></td></tr><tr><td><code>REGEXP_REPLACE(string, pattern, replacement)</code></td><td>Gibt eine Kopie einer angegebenen Zeichenfolge zurück, wobei das Übereinstimmungsmuster durch die Ersetzungszeichenfolge ersetzt wird.<p>Beispiel:</p><p><code>REGEXP_REPLACE('abc  123', '\\s', '-') = 'abc--123'
</code></p></td></tr><tr><td><code>REPLACE(string, substring, replacement)</code></td><td>Sucht in einer Zeichenfolge nach einer Teilzeichenfolge und ersetzt diese durch das Ersatzelement. Falls die Teilzeichenfolge nicht gefunden wird, bleibt die Zeichenfolge unverändert.<p>Beispiel:</p><p><code>REPLACE("Calculation", "ion", "ed") = "Calculated"</code></p></td></tr><tr><td><code>RIGHT(string, number)</code></td><td>Gibt den rechten Teil einer Zeichenfolge mit der angegebenen Anzahl an Zeichen in der Zeichenfolge zurück.<p>Beispiel:</p><p><code>RIGHT("Calculation", 4) = "tion"</code></p></td></tr><tr><td><code>RTRIM(string)</code></td><td>Gibt eine Zeichenfolge zurück und entfernt dabei alle nachgestellten Leerzeichen.<p>Beispiel:</p><p><code>Example: RTRIM("Market ") = "Market"</code></p></td></tr><tr><td><code>SPACE(number)</code></td><td>Gibt eine Zeichenfolge zurück, die aus der angegebenen Anzahl an Leerzeichen besteht.<p>Beispiel:</p><p><code>SPACE(1) = " "</code></p></td></tr><tr><td><code>SPLIT(string, delimiter, token number)	
</code></td><td><p>Gibt eine Teilzeichenfolge einer Zeichenfolge mit Trennzeichen zurück, wobei die Zeichen vom Anfang oder Ende der Zeichenfolge extrahiert werden.</p><p>Beispiel:</p><p><code>SPLIT('a-b-c-d', '-', 2) = 'b'</code></p></td></tr><tr><td><code>STARTSWITH(string, substring)</code></td><td>Gibt "true" zurück, wenn die Zeichenfolge mit <code>substring</code> beginnt. Vorgestellte Leerzeichen werden ignoriert.<p>Beispiel:</p><p><code>STARTSWITH(“Joker”, “Jo”) = true
</code></p></td></tr><tr><td><code>TRIM(string)</code></td><td>Gibt die Zeichenfolge zurück und entfernt dabei alle vorgestellten und nachfolgenden Leerzeichen.<p>Beispiel:</p><p><code>TRIM(" Calculation ") = "Calculation"</code></p></td></tr><tr><td><code>UPPER(string)</code></td><td>Gibt eine Zeichenfolge ausschließlich in Großbuchstaben zurück.<p>Beispiel:</p><p><code>UPPER("Calculation") = "CALCULATION"
</code></p></td></tr></tbody></table>

### Aggregationsfunktionen

<table style="width: 100%;" class="simple-table"><colgroup><col style="width: 276px;"><col></colgroup><tbody><tr><th>Syntax</th><th>Beschreibung</th></tr><tr><td><code>AVG(expression)</code></td><td>Gibt den Mittelwert aller Werte im Ausdruck zurück. AVG kann nur für numerische Felder verwendet werden. Null-Werte werden ignoriert<p>Beispiel:</p><p><code>AVG([Profit])</code></p></td></tr><tr><td><code>COUNT(expression)</code></td><td>Gibt die Anzahl an Elementen in einer Gruppe zurück. Null-Werte werden nicht gezählt.<p>Beispiel:</p><p><code>COUNT([Customer ID])
</code></p></td></tr><tr><td><code>COUNTD(expression)</code></td><td>Gibt die Anzahl an eindeutigen Elementen in einer Gruppe zurück. NULL-Werte werden nicht gezählt. Jeder eindeutige Wert wird nur einmal gezählt.<p>Beispiel:</p><p><code>COUNTD([Region])</code></p></td></tr><tr><td><code>MEDIAN(expression)</code></td><td>Gibt den Median eines einzelnen Ausdrucks zurück. MEDIAN kann nur für numerische Felder verwendet werden. Null-Werte werden ignoriert.<p>Beispiel:</p><p><code>MEDIAN([Profit])
</code></p></td></tr><tr><td><code>PERCENTILE(expression, number)</code></td><td>Aggregierte Berechnung, die entsprechend der jweiligen Zahl den Wert des angegebenen Ausdrucks als Perzentil zurückgibt. Gültige Werte für die Zahl sind 0 bis 1. PERCENTILE([expression], 0,50) gibt immer den Medianwert im Ausdruck zurück.<p>Beispiel:</p><p><code>PERCENTILE([Sales], 0.90)</code></p></td></tr><tr><td><code>STDEV(expression)</code></td><td>Gibt die Standardabweichung der Stichprobe für den Ausdruck zurück.<p>Beispiel:</p><p><code>STDEV([Profit])</code></p></td></tr><tr><td><code>STDEVP(expression)</code></td><td><p>Gibt die Standardabweichung der Population für den Ausdruck zurück.</p><p>Beispiel:</p><p><code>STDEVP([Profit])
</code></p></td></tr><tr><td><code>SUM(expression)</code></td><td><p>Gibt die Summe aller Werte im Ausdruck zurück. SUM kann nur für numerische Felder verwendet werden. Null-Werte werden ignoriert.</p><p>Beispiel:</p><p><code>SUM([Profit])
</code></p></td></tr><tr><td><code>VAR(expression)</code></td><td><p>Gibt die statistische Varianz aller Werte in einem Ausdruck basierend auf einer Stichprobe der Population zurück.</p><p>Beispiel:</p><p><code>VAR([Height])</code></p></td></tr><tr><td><code>VARP(expression)</code></td><td><p>Gibt die statistische Varianz aller Werte in einem Ausdruck basierend auf der Gesamtpopulation zurück.</p><p>Beispiel:</p><p><code>VARP([Test Score])</code></p></td></tr><tr><td><code>ZN(expression)</code></td><td><p>Gibt den Ausdruck zurück, sofern er nicht null ist; anderenfalls wird 0 zurückgegeben. Nutzen Sie diese Funktion, um den Wert 0 zu verwenden anstelle von NULL-Werten.</p><p>Beispiel:</p><p><code>ZN([Profit]) = [Profit]</code></p></td></tr></tbody></table>

### Typkonvertierungsfunktionen

<table style="width: 100%;" class="simple-table"><colgroup><col style="width: 276px;"><col></colgroup><tbody><tr><th>Syntax</th><th>Beschreibung</th></tr><tr><td><code>DATE</code></td><td>Gibt für eine Zahl, eine Zeichenfolge oder einen Datumsausdruck ein Datum zurück.<p>Beispiel:</p><p><code>DATE("2006-06-15 14:52") = 2006-06-15</code></p><p>Beachten Sie, dass die Anführungszeichen erforderlich sind.</p></td></tr><tr><td><code>DATETIME(expression)</code></td><td>Gibt für eine Zahl, eine Zeichenfolge oder einen Datumsausdruck einen Datum/Uhrzeit-Wert zurück.<p>Beispiel:</p><p><code>DATETIME("April 15, 2004 07:59:00")</code></p><p>Beachten Sie, dass die Anführungszeichen erforderlich sind.</p></td></tr><tr><td><code>FLOAT(expression)</code></td><td>Gibt bei einem beliebigen Ausdruck eine Gleitkommazahl zurück. Diese Funktion erfordert unformatierte Zahlen, was bedeutet, dass Kommas und andere Symbole ausgeschlossen sind.<p>Beispiel:</p><p><code>FLOAT("3")= 3.000</code></p></td></tr><tr><td><code>INT(expression)</code></td><td>Gibt bei gegebenem Ausdruck eine Ganzzahl zurück. Diese Funktion kürzt das Ergebnis zur nächsten ganzen Zahl gegen null.<p>Beispiel:</p><p><code>INT(8.0/3.0) = 2 or INT(-9.7) = -9</code></p></td></tr><tr><td><code>MAKEDATE(year, month, day)</code></td><td>Gibt einen aus einem Jahr, einem Monat und einem Tag des Monats bestehenden Datumswert zurück.<p>Beispiel:</p><p><code>MAKEDATE(2014, 3, 18)</code></p></td></tr><tr><td><code>MAKEDATETIME(date, time)</code></td><td><p>Gibt bei gegebenem Datums- und Uhrzeitausdruck einen Datums- und Uhrzeitwert zurück.</p><p>Beispiel:</p><p><code>MAKEDATETIME(#2012-11-12#, #07:59:00#)</code></p></td></tr><tr><td><code>MAKETIME(hour, minute, second)</code></td><td><p>Gibt einen Uhrzeitwert zurück, der aus der angegebenen Stunde, Minute und Sekunde gebildet wird.</p><p>Beispiel:</p><p><code>MAKETIME(14, 52, 40)</code></p></td></tr><tr><td><code>STR(expression)</code></td><td><p>Gibt bei gegebenem Ausdruck eine Zeichenfolge zurück.</p><p>Beispiel:</p><p><code>STR([Age]) </code></p><p>Gibt alle Werte der Kennzahl "Alter" als Zeichenfolgen zurück.</p></td></tr></tbody></table>

### Datumsfunktionen

<table style="width: 100%;" class="simple-table"><colgroup><col style="width: 276px;"><col></colgroup><tbody><tr><th>Syntax</th><th>Beschreibung</th></tr><tr><td><code>DATEADD(date_part, interval, date)</code></td><td>Fügt ein Inkrement zum angegebenen Datum hinzu und gibt das neue Datum zurück. Das Inkrement wird durch das Intervall und den date_part definiert.<p>Beispiel:</p><p><code>DATEADD('month', 3, #2004-04-15#) = 2004-07-15 12:00:00 AM</code></p></td></tr><tr><td><code>DATEDIFF(date_part, start_date, end_date, [start_of_week])</code></td><td><p>Gibt die Differenz zwischen zwei Daten zurück, wobei start_date vom end_date subtrahiert wird. Die Differenz wird in Einheiten von date_part ausgedrückt. Wenn start_of_week weggelassen wird, wird der erste Wochentag durch den für die Datenquelle konfigurierten Starttag bestimmt.</p><p>Beispiel:</p><p><code>DATEDIFF('month', #2004-07-15#, #2004-04-03#, 'sunday') = -3</code></p></td></tr><tr><td><code>DATENAME(date_part, date, [start_of_week])</code></td><td>Gibt einen Teil des angegebenen Datums zurück, wobei der Teil durch date_part definiert ist. Wenn start_of_week weggelassen wird, wird der erste Wochentag durch den für die Datenquelle konfigurierten Starttag bestimmt.<p>Beispiel:</p><p><code>DATENAME('month', #2004-04-15#) = "April"
</code></p></td></tr><tr><td><code>DATEPARSE(format, string)</code></td><td>Konvertiert eine Zeichenfolge in ein Datum im angegebenen Format.<p>Beispiel:</p><p><code>DATEPARSE ("dd.MMMM.yyyy", "15.April.2004") = 2004-04-15 12:00:00 AM</code></p></td></tr><tr><td><code>DATEPARTT(date_part, date, [start_of_week])</code></td><td>Gibt einen Teil des angegebenen Datums als Ganzzahl zurück, wobei der Teil durch date_part definiert wird. Wenn start_of_week weggelassen wird, wird der erste Wochentag durch den für die Datenquelle konfigurierten Starttag bestimmt.<p>Beispiel:</p><p><code>DATEPART('month', #2004-04-15#) = 4</code></p></td></tr><tr><td><code>DATETRUNC(date_part, date, [start_of_week])</code></td><td>Kürzt das angegebene Datum auf die durch date_part angegebene Genauigkeit und gibt das neue Datum zurück. Wenn start_of_week weggelassen wird, wird der erste Wochentag durch den für die Datenquelle konfigurierten Starttag bestimmt.<p>Beispiel:</p><p><code>DATETRUNC('quarter', #2004-08-15#) = 2004-07-01 12:00:00 AM
</code></p></td></tr><tr><td><code>DAY(date)</code></td><td>Gibt den Tag des angegebenen Datums als Ganzzahl zurück.<p>Beispiel:</p><p><code>DAY(#2004-04-12#) = 12
</code></p></td></tr><tr><td><code>ISDATE(string)</code></td><td>Gibt "true" zurück, wenn eine angegebene Zeichenfolge ein gültiges Datum darstellt.<p>Beispiel:</p><p><code>ISDATE("2004-04-15") = True
</code></p></td></tr><tr><td><code>MONTH(date)</code></td><td><p>Gibt den Monat eines Datums als Ganzzahl zurück.</p><p>Beispiel:</p><p><code>MONTH(#2004-04-12#) = 4</code></p></td></tr><tr><td><code>NOW()</code></td><td>Gibt das aktuelle Datum und die aktuelle Zeit zurück.<p>Beispiel:</p><p><code>NOW() = 2004-05-12 1:08:21 PM
</code></p></td></tr><tr><td><code>TODAY()</code></td><td>Gibt das aktuelle Datum zurück.<p>Beispiel:</p><p><code>TODAY() = 2004-05-12</code></p></td></tr><tr><td><code>YEAR(date)</code></td><td>Gibt das Jahr eines Datums als Ganzzahl zurück.<p>Beispiel:</p><p><code>YEAR(#2004-04-12#) = 2004
</code></p></td></tr></tbody></table>

### Logische Funktionen

<table style="width: 100%;" class="simple-table"><colgroup><col style="width: 276px;"><col></colgroup><tbody><tr><th>Syntax</th><th>Beschreibung</th></tr><tr><td><code>IFNULL(expr1, expr2)</code></td><td>Gibt den Ausdruck <code>&lt;expr1&gt;</code> zurück, sofern er nicht null ist; andernfalls wird <code>&lt;expr2&gt;</code> zurückgegeben.<p>Beispiel:</p><p><code>IFNULL([Profit], 0)</code></p></td></tr><tr><td><code>IIF(test, then, else, [unknown])</code></td><td>Prüft, ob eine Bedingung erfüllt wird, und gibt einen Wert zurück, wenn diese wahr (TRUE) ist, einen anderen Wert, wenn diese falsch (FALSE) ist, und optional einen dritten Wert oder NULL, wenn diese unbekannt ist.<p>Beispiel:</p><p><code>IIF([Profit] &gt; 0, 'Profit', 'Loss')</code></p></td></tr><tr><td><code>ISDATE(string)</code></td><td>Gibt "true" zurück, wenn eine angegebene Zeichenfolge ein gültiges Datum darstellt.<p>Beispiel:</p><p><code>ISDATE("2004-04-15") = True</code></p></td></tr><tr><td><code>ISNULL(expression)</code></td><td>Gibt "true" zurück, wenn der Ausdruck keine gültigen Daten enthält (<code>Null</code>).<p>Beispiel:</p><p><code>ISNULL([Profit])
</code></p></td></tr><tr><td><code>ZN(expression)</code></td><td><p>Gibt den Ausdruck zurück, sofern er nicht null ist; anderenfalls wird 0 zurückgegeben. Nutzen Sie diese Funktion, um den Wert 0 zu verwenden anstelle von NULL-Werten.</p><p>Beispiel:</p><p><code>ZN([Profit]) = [Profit]</code></p></td></tr></tbody></table>

### Analytische Funktionen

<table style="width: 100%;" class="simple-table"><colgroup><col style="width: 276px;"><col></colgroup><tbody><tr><th>Syntax</th><th>Beschreibung</th></tr><tr><td><code>LAST_VALUE(expression, [return_last_non-null_value])</code></td><td>Gibt den letzten Wert des gegebenen Ausdrucks zurück, von der ersten Zeile der Partition bis zur aktuellen Zeile. Akzeptiert einen optionalen zweiten booleschen Parameter, um den letzten Wert zurückzugeben, der ungleich null ist.<p>Beispiel:</p><p><code>{ ORDERBY [Row ID] ASC: LAST_VALUE([Category], true) } = returns the last non-null value of [Category]
</code></p></td></tr><tr><td><code>LOOKUP(expression, [offset])</code></td><td><p>Gibt den Wert des angegebenen Ausdrucks in einer Zielzeile als relativen Versatz von der aktuellen Zeile zurück. Gibt NULL zurück, wenn die Zielzeile nicht bestimmt werden kann.</p><p>Der Parameter [<code>offset</code>] der <code>LOOKUP</code>-Funktion kann nur eine literale Ganzzahl (wie beispielsweise 1) entgegennehmen.</p><p>Beispiel:</p><p><code>{ORDERBY [DATE] ASC : LOOKUP([SALES], -1)} </code></p><p>Gibt den SALES-Wert aus der vorherigen Zeile zurück.</p></td></tr><tr><td><code>NTILE(number)</code></td><td>Verteilt Zeilen in einer ausgewählten Partition in eine spzifizierte Anzahl von Gruppen oder Kacheln. Mit dieser Funktion würde die auf 3 Kacheln verteilte Wertemenge (6,9,9,14) den Kacheln (1,2,2,3) in aufsteigender Reihenfolge zugewiesen.<p>Beispiel:</p><p><code>{PARTITION [Customer]: {ORDERBY [Sales] ASC: NTILE(3) }}</code></p></td></tr><tr><td><code>RANK()</code></td><td>Gibt den standardmäßigen Konkurrenzrang für die aktuelle Zeile in der Partition zurück. Identischen Werten wird ein identischer Rang zugewiesen.<p>Beispiel:</p><p><code>{PARTITION [Customer]: {ORDERBY [Sales] ASC: RANK() }}
</code></p></td></tr><tr><td><code>RANK_DENSE()</code></td><td>Gibt den dichten Rang für die aktuelle Zeile in der Partition zurück. Identischen Werten wird der gleiche Rang zugewiesen. In die Zahlenreihenfolge werden keine Leerstellen eingefügt.<p>Beispiel:</p><p><code>{PARTITION [Customer]: {ORDERBY [Sales] ASC: RANK_DENSE() }}
</code></p></td></tr><tr><td><code>RANK_MODIFIED()</code></td><td>Gibt den geänderten Konkurrenzrang für die aktuelle Zeile in der Partition zurück. Identischen Werten wird ein identischer Rang zugewiesen.<p>Beispiel:</p><p><code>{PARTITION [Customer]: {ORDERBY [Sales] ASC: RANK_MODIFIED() }}</code></p></td></tr><tr><td><code>RANK_PERCENTILE()</code></td><td>Gibt den Perzentilrang für die aktuelle Zeile in der Partition zurück.<p>Beispiel:</p><p><code>{PARTITION [Customer]: {ORDERBY [Sales] ASC: RANK_PERCENTILE() }}</code></p></td></tr><tr><td><code>ROW_NUMBER()</code></td><td>Gibt für jede Zeile eine eindeutige sequenzielle Zeilen-ID zurück.<p>Beispiel:</p><p><code>{PARTITION [Customer]: {ORDERBY [Sales] ASC: ROW_NUMBER() }}</code></p></td></tr><tr><td><code>RUNNING_AVG(expression)</code></td><td>Gibt den laufenden Durchschnitt des Ausdrucks zurück, von der ersten Zeile der Partition bis zur aktuellen Zeile.<p>Beispiel:</p><p><code>{ PARTITION [Category] : { ORDERBY [Row ID] ASC : RUNNING_AVG([Sales]) } } = running average of Sales, per Category.
</code></p></td></tr><tr><td><code>RUNNING_SUM(expression)</code></td><td>Gibt die laufende Summe des Ausdrucks zurück, von der ersten Zeile der Partition bis zur aktuellen Zeile.<p>Beispiel:</p><p><code>{ ORDERBY [Row ID] ASC : RUNNING_SUM([Sales]) } = running sum of all Sales</code></p></td></tr></tbody></table>

### Schlüsselwörter

<table style="width: 100%;" class="simple-table"><colgroup><col style="width: 276px;"><col></colgroup><tbody><tr><th>Funktion</th><th>Beschreibung</th></tr><tr><td><code>AND</code></td><td>Führt eine logische Verknüpfung von zwei Ausdrücken aus <p>Beispiel:</p><p><code>IF (ATTR([Market]) = "New Business" AND SUM([Sales]) &gt; [Emerging Threshold] )THEN "Well Performing"</code></p></td></tr><tr><td><code>ASC</code></td><td>Definiert die aufsteigende Reihenfolge für Operationen vom Typ <code>ORDERBY </code>.<p>Beispiel</p><p><code>{ORDERBY [Sales] ASC:RANK()}</code></p></td></tr><tr><td><code>CASE</code></td><td>Sucht den ersten &lt;<code>value</code>&gt;, der mit <code>&lt;expr</code>&gt; übereinstimmt, und gibt dann den entsprechenden &lt;<code>return</code>&gt; zurück.<p>Beispiel:</p><p><code>CASE [RomanNumeral] WHEN "|" THEN 1 WHEN "II" THEN 2 ELSE 3 END</code></p></td></tr><tr><td><code>DESC</code></td><td>Definiert die absteigende Reihenfolge für Operationen vom Typ <code>ORDERBY </code>. <p>Beispiel:</p><p><code>{ORDERBY [Sales] DESC:RANK()}</code></p></td></tr><tr><td><code>ELSE</code></td><td>Prüft eine Reihe von Ausdrücken und gibt den Wert &lt;<code>then</code>&gt; für den ersten wahren Ausdruck &lt;<code>expr</code>&gt; zurück. <p>Beispiel:</p><p><code>IF [Profit] &gt; 0 THEN 'Profitable' ELSE 'Loss' END</code></p></td></tr><tr><td><code>ELSEIF</code></td><td>Prüft eine Reihe von Ausdrücken und gibt den Wert &lt;<code>then</code>&gt; für den ersten wahren Ausdruck &lt;<code>expr</code>&gt; zurück. Entspricht dem Setzen einer <code>if</code>-Anweisung innerhalb einer ELSE-Operation.<p>Beispiel:</p><p><code>IF [Profit] &gt; 0 THEN 'Profitable' ELSEIF [Profit] = 0 THEN 'Breakeven' ELSE 'Loss' END</code></p></td></tr><tr><td><code>END</code></td><td>Beendet einen durch die entsprechende Direktive eingeleiteten Vorgang.<p>Beispiel:</p><p><code>IF [Profit] &gt; 0 THEN 'Profitable' ELSEIF [Profit] = 0 THEN 'Breakeven' ELSE 'Loss' END</code></p></td></tr><tr><td><code>{ FIXED }</code></td><td>FIXED-Detailgenauigkeitsausdrücke berechnen Werte mithilfe der angegebenen Dimensionen, jedoch ohne Verweis auf die Ansichtsdetailgenauigkeit. <p>Beispiel:</p><p><code>{FIXED[Customer ID]:MIN([Order Date])}</code></p></td></tr><tr><td><code>IF</code></td><td>Erstellt eine bedingte Anweisung (<code>IF</code>-Anweisung) und ermöglicht die Ausführung nur, wenn eine Bedingung wahr ist.<p>Beispiel:</p><p><code>IF [Profit] &gt; 0 THEN 'Profitable' ELSEIF [Profit] = 0 THEN 'Breakeven' ELSE 'Loss' END</code></p></td></tr><tr><td><code>NOT</code></td><td>Führt eine logische Negation eines Ausdrucks durch. <p>Beispiel:</p><p><code>IF NOT [Profit] &gt; 0 THEN "Unprofitable" END</code></p></td></tr><tr><td><code>OR</code></td><td>Führt eine logische Disjunktion eines Ausdrucks aus. <p>Beispiel:</p><p><code>IF [Profit] &lt; 0 OR [Profit] = 0 THEN "Needs Improvement" END</code></p></td></tr><tr><td><code>{ ORDERBY </code>}</td><td>Definiert die Anwendungsreihenfolge analytischer Funktionen. Verwenden Sie das optionale Argument "asc | desc", um für jedes Feld eine aufsteigende oder absteigende Reihenfolge festzulegen. <p>Beispiel:</p><p><code>{ORDERBY [Customer Name] ASC, [Sales] DESC: RANK() }</code></p></td></tr><tr><td><code>{ PARTITION }</code></td><td>Definiert die Gruppe für Analysefunktionen. ORDERBY muss sich innerhalb der Partition befinden. <p>Beispiel:</p><p><code>{PARTITION [Customer]: {ORDERBY [Sales]: RANK()}}</code></p></td></tr><tr><td><code>THEN</code></td><td>Prüft eine Reihe von Ausdrücken und gibt den Wert &lt;<code>then</code>&gt; für den ersten wahren Ausdruck &lt;<code>expr</code>&gt; zurück. <p>Beispiel:</p><p><code>IF [Profit] &gt; 0 THEN 'Profitable' ELSEIF [Profit] = 0 THEN 'Break even' ELSE 'unprofitable' END</code></p></td></tr><tr><td><code>WHEN</code></td><td>Sucht den ersten &lt;<code>value</code>&gt;, der mit &lt;<code>expr</code>&gt; übereinstimmt, und gibt dann den entsprechenden &lt;<code>return</code>&gt; zurück. <p>Beispiel:</p><p><code>CASE [RomanNumberal] WHEN 'I' THEN 1 WHEN 'II' THEN 2 ELSE 3 END</code></p></td></tr></tbody></table>