Berechnen eines Feldes

Insights in ArcGIS Online
Insights in ArcGIS Enterprise
Insights Desktop

Sie können für das Dataset über die Datentabelle oder mit Data Engineering neue Felder hinzufügen und berechnen. Berechnete Felder ermöglichen es Ihnen, Werte zu erstellen, z. B. Wachstumsanteile, Verluste in Prozent und Änderungen im Zeitverlauf, indem Sie Felder aus dem Dataset auswählen und Operatoren und Funktionen anwenden.

Sie können auch Felder berechnen, indem Sie die Werkzeuge %-Änderung berechnen, Verhältnis berechnen und Z-Score berechnen unter Antworten suchen verwenden.

Tipp:

Verwenden Sie die Datentabelle, um Ihrem Dataset normalisierte Daten für Karten, Diagramme und Tabellen hinzuzufügen. Nachdem die Daten berechnet und Ihrem Dataset hinzugefügt wurden, ändern Sie den Feldtyp, sodass es als Anteil/Verhältnis-Feld Anteil-/Verhältnisfeld erkannt wird. Weitere Informationen zur Normalisierung von Daten finden Sie unter Choropleth-Karten.

Berechnen eines Feldes in der Datentabelle

Felder, die in der Datentabelle berechnet werden, werden nur in der Arbeitsmappe angezeigt und nicht zu dem ursprünglichen Dataset hinzugefügt. Wenn Sie das berechnete Feld außerhalb der Arbeitsmappe beibehalten möchten, erstellen Sie einen neuen Feature-Layer, indem Sie das Dataset freigeben oder Data Engineering verwenden.

Hinweis:

Die Datentabelle stellt eine repräsentative Ansicht Ihrer Daten bereit und ist auf 2.000 Zeilen beschränkt. Mittels auf- und absteigender Sortierung können Sie die obersten 2.000 und die untersten 2.000 Zeilen anzeigen. Alle Berechnungen werden für das vollständige Dataset durchgeführt.

Führen Sie die folgenden Schritte aus, um ein Feld in der Datentabelle zu berechnen:

  1. Öffnen Sie eine Arbeitsmappe und fügen Sie gegebenenfalls Daten hinzu.
  2. Klicken Sie im Datenbereich neben dem Dataset, dem Sie ein berechnetes Feld hinzufügen möchten, auf die Schaltfläche Dataset-Optionen Dataset-Optionen.
  3. Klicken Sie auf Datentabelle anzeigen.
  4. Klicken Sie auf + Feld.

    Es wird eine Spalte namens Neues Feld an die Tabelle angefügt.

    Hinweis:

    Sie können die Größe der Spalten und die Sortierung ändern, die Änderungen werden jedoch nicht gespeichert.

  5. Klicken Sie auf die Spaltenüberschrift der neuen Spalte, und geben Sie einen aussagekräftigen Namen ein.
  6. Klicken Sie auf fx oder Berechnungsfunktion eingeben, um ein Menü mit Funktionen, Feldnamen und Operatoren zum Erstellen der Formel anzuzeigen.

    Statt der Schaltflächen im Menü fx können auch die entsprechenden Tastaturbefehle verwendet werden.

  7. Verwenden Sie die zum Durchführen der Berechnung erforderlichen Funktionen, Felder und Operatoren.
  8. Klicken Sie auf Ausführen.

    Wenn die Schaltfläche Ausführen nicht aktiviert ist, weist die Syntax der Berechnung einen Fehler auf.

Das neu berechnete Feld wird am Ende des Datasets angezeigt. Sie können ein berechnetes Feld entfernen, indem Sie es auswählen und auf die Schaltfläche Berechnetes Feld löschen Berechnetes Feld löschen klicken.

Berechnen einer Spalte mit Data Engineering

Insights Desktop
Hinweis:

Data-Engineering-Funktionen sind in Insights desktop verfügbar. Alle Insights in ArcGIS Online- und Insights in ArcGIS Enterprise-Benutzer haben Zugriff auf Insights desktop. Weitere Informationen erhalten Sie unter Einführung in ArcGIS Insights.

Die Data-Engineering-Funktionen sind derzeit als Vorschauversion verfügbar.

Das Werkzeug Spalte berechnen kann einem Datenmodell hinzugefügt und zum Hinzufügen von Spalten zum Ausgabe-Dataset verwendet werden. Spalten, die in einer Daten-Arbeitsmappe berechnet werden, werden dem Ausgabe-Dataset permanent hinzugefügt statt nur in der Arbeitsmappe vorhanden zu sein.

Führen Sie die folgenden Schritte aus, um eine Spalte mit Data Engineering zu berechnen:

  1. Öffnen Sie eine Daten-Arbeitsmappe in Insights desktop, und fügen Sie Daten hinzu, falls erforderlich.
  2. Klicken Sie auf der Werkzeugleiste im Seitenbereich auf die Schaltfläche Spalte berechnen Spalte berechnen.
  3. Geben Sie für den Parameter Neuer Spaltenname den Namen der neuen Spalte ein.
    Hinweis:

    Für Spaltennamen werden von den unterstützten Datenbanken in Insights nur Buchstaben, Zahlen und Unterstriche unterstützt. Nicht unterstützte Zeichen in Spaltennamen werden beim Speichern in einer Datenbank in Unterstriche konvertiert (Beispiel: population/sq mile wird in population_sq_mile konvertiert). Verwenden Sie für optimale Ergebnisse einen Spaltennamen, der nur unterstützte Zeichen enthält, und aktualisieren Sie dann gegebenenfalls den Aliasnamen der Spalte mit anderen Zeichen.

  4. Verwenden Sie in dem Feld Spaltenausdruck die Funktionen, Spaltennamen und Operatoren, um Ihre Berechnungen wie erforderlich abzuschließen.

    Statt der Schaltflächen können auch die entsprechenden Tastaturbefehle verwendet werden.

    Hinweis:

    Wenn die Daten-Arbeitsmappe mehr als ein Dataset enthält, basieren die Eingabeoptionen auf der aktiven Tabelle.

  5. Klicken Sie auf Ausführen.

    Wenn die Schaltfläche Ausführen nicht aktiviert ist, weist die Syntax der Berechnung einen Fehler auf.

Die neu berechnete Spalte wird der Tabelle hinzugefügt, und das Werkzeug Spalte berechnen wird dem Datenmodell hinzugefügt.

Operatoren

Zum Berechnen eines Feldes können mathematische und logische Operatoren erforderlich sein. Zum Berechnen von Feldern sind die folgenden Operatoren verfügbar:

OperatorVerwenden

+

Addition

-

Subtraktion

×

Multiplikation Der entsprechende Tastaturbefehl lautet "*".

÷

Division Der entsprechende Tastaturbefehl lautet "/".

xy

Potenzfunktion Der entsprechende Tastaturbefehl lautet "^".

<

Das Kleiner-als-Zeichen

>

Das Größer-als-Zeichen

=

Das Gleich-Zeichen

<=

Das Kleiner-gleich-Zeichen

>=

Das Größer-gleich-Zeichen

<>

Das Ungleich-Zeichen

,

Komma, als Trennzeichen zwischen Syntaxkomponenten in Funktionen verwendet.

(

Öffnende Klammer

)

Schließende Klammer

AND

Logischer Operator, wenn alle Bedingungen erfüllt sein müssen.

OR

Logischer Operator, wenn eine der Bedingungen erfüllt sein muss.

IS NULL

Ein binärer Operator, der überprüft, ob Werte in einem Feld NULL sind. Wenn der überprüfte Wert nicht NULL ist, wird der Ausgabewert 0 zugewiesen, und wenn der überprüfte Wert NULL ist, wird der Ausgabewert 1 zugewiesen.

IS NOT NULL

Ein binärer Operator, der überprüft, ob Werte in einem Feld nicht NULL sind. Wenn der überprüfte Wert NULL ist, wird der Ausgabewert 0 zugewiesen, und wenn der überprüfte Wert nicht NULL ist, wird der Ausgabewert 1 zugewiesen.

Hinweis:

Mathematische Operatoren wie +, -, > und = sind mit Zahlen- und Anteil/Verhältnis-Feldern kompatibel. Funktionen wie CONCATENATE()und DATEDIF() können anstelle bestimmter mathematischer Operatoren für Zeichenfolgenfelder bzw. Datums-/Uhrzeitfelder verwendet werden.

Die Operatoren IS NULL und IS NOT NULL sind mit allen Feldtypen (Zeichenfolge, Zahl, Anteil/Verhältnis und Datum/Uhrzeit) mit Ausnahme von Positionen kompatibel. Einige Zeichenfolgenfelder mit NULL-Werten können als leere Zeichenfolgen konfiguriert werden. In diesen Fällen geben IS NULL und IS NOT NULL nicht die erwarteten Ergebnisse zurück. Stattdessen sollte anstelle von field IS NULL und field IS NOT NULL der Ausdruck field="" bzw. field<>"" verwendet werden.

Die Bedingungen, die mit den Operatoren AND und OR verknüpft werden können, weisen eine andere Syntax auf als die Bedingungen, die mit den logischen Funktionen AND und OR verknüpft werden können. In den folgenden Beispielen werden entsprechende Berechnungen mit den Funktionen und Operatoren gezeigt:

Hinweis:

Beim Berechnen von Feldern müssen AND und OR in der Funktion IF() verwendet werden.

FunktionOperator

IF(AND(MeanAge>=18, MeanAge<=33),"Millennial","Other")

IF(MeanAge>=18 AND MeanAge<=33,"Millennial","Other")

IF(OR(Crime="Theft", Crime="Theft from vehicle", Crime="Shoplifting"), "Larceny", "Other")

IF(Crime="Theft" OR Crime="Theft from vehicle" OR Crime="Shoplifting", "Larceny", "Other")

Funktionen

Funktionen können über die Schaltfläche fx oder das Feld Berechnungsfunktion eingeben in der Datentabelle aufgerufen werden. Es gibt vier Funktionstypen: Zeichenfolge, numerisch, Datum und logisch.

Wenn Sie der Berechnung eine Funktion hinzufügen, wird ein Pop-up mit der Funktionssyntax angezeigt. Sie können das Pop-up mit der Schaltfläche zum Schließen Schließen schließen oder es erneut anzeigen, indem Sie im Feld Berechnungsfunktion eingeben auf die Funktion klicken.

Zeichenfolgenfunktion

Die meisten Zeichenfolgenfunktionen verwenden Zeichenfolgeneingaben, um Zeichenfolgenausgaben zu erzeugen. Die beiden Ausnahmen bilden die Funktionen VALUE() und FIND(), die jeweils Zeichenfolgeneingaben verwenden, um numerische Ausgaben zu erzeugen.

Eingabetext in Zeichenfolgenfunktionen können Literal- (Text in Anführungsstrichen) oder Kategoriefeldwerte sein. Die folgende Tabelle verwendet Kategoriefelder für Beispiele und Beispielwerte, die in diesen Feldern enthalten sein können. Anführungszeichen werden in den Feldwerten verwendet, um zu verdeutlichen, dass die Felder Kategoriedaten aufweisen.

SyntaxBeschreibungBeispiel

CONCATENATE(text1, [text2], ... )

Verbindet mindestens zwei Zeichenfolgenwerte.

Ein Dataset mit Schulen in Kalifornien enthält Felder für Adresse, Stadt und Postleitzahl. Ein Einzelfeld mit Postanschriften kann mit der Funktion CONCATENATE() erstellt werden:

  • Funktionssyntax: CONCATENATE(Address,", ", City," , CA, ",ZIP)
  • Beispielfeldwerte:
    • Address = "380 New York St"
    • City = "Redlands"
    • ZIP = "92373"
  • Ergebnistext: "380 New York St, Redlands, CA, 92373"

FIND(find_text, within_text, [start_num])

Gibt die Position des angegebenen Textes (ein oder mehrere Zeichen) in einer Zeichenfolge oder einem Textfeld an. Die Funktion FIND() ist meist am nützlichsten, wenn sie gemeinsam mit anderen Funktionen wie MID(), LEFT() oder RIGHT() verwendet wird.

Ein Dataset enthält ein Feld mit Adressen (einschließlich Hausnummer und Straßenname). Um die Daten nach Straße zu klassifizieren, muss der Straßenname aus dem Rest der Adresse mit der Funktion MID() entfernt werden. Jede Nummer hat jedoch eine andere Länge, sodass start_num für jede Zeile unterschiedlich ist. start_num kann mit der Funktion FIND() gefunden werden:

  • Funktionssyntax: FIND(" ", Address)
  • Beispielfeldwerte:
    • Address = "380 New York St"
  • Ergebniszahl: 4

LEFT(text, [num_chars])

Gibt einen Teil eines Textfeldes zurück.

  • num_chars: Legt fest, wie viele Zeichen des Ausdrucks zurückgegeben werden. Es muss sich um einen ganzzahligen Wert handeln. Die Anzahl der Zeichen wird von links nach rechts, von der ersten Position ausgehend, ermittelt. Wenn num_chars nicht angegeben wird, wird standardmäßig ein Zeichen verwendet.

Ein Dataset mit Verkehrsunfällen enthält ein Kategoriefeld mit dem Tag des Unfalls, einschließlich Wochentag, Datum und Jahr. Um die Unfälle nach Wochentag zu untersuchen, kann ein neues Feld berechnet werden, damit die ersten drei Zeichen des Feldes (mit dem Wochentag beginnend) mithilfe der Funktion LEFT() angezeigt werden:

  • Funktionssyntax: LEFT(Accident_Date, 3)
  • Beispielfeldwerte:
    • Accident_Date = "Monday, November 14, 2016"
  • Ergebnistext: "Mon"

LOWER(text)

Gibt einen Zeichenausdruck mit allen Daten zurück, die in Kleinbuchstaben konvertiert wurden.

Ein Bauamt stellt eine Liste mit Straßenschildern zusammen, die ausgetauscht werden müssen. Da der Liste neue Einträge hinzugefügt wurden, ist das Format des Feldes Status nicht mehr standardisiert, sodass es schwierig ist, die Straßenschilder mit Einzelwerten anzuzeigen. Das Feld Status kann mit der Funktion LOWER() so standardisiert werden, dass in allen Einträgen Kleinbuchstaben verwendet werden:

  • Funktionssyntax: LOWER(Status)
  • Beispielfeldwerte:
    • Status = "Installed"
  • Ergebnistext: "installed"

MID(text, start_num, [num_chars])

Gibt einen Teil eines Textfeldes zurück.

  • start_num: Gibt die Position des ersten Zeichens (mit 1 beginnend) zurück. start_num muss ein ganzzahliger Wert sein.
  • num_chars: Legt fest, wie viele Zeichen des Ausdrucks zurückgegeben werden. Es muss sich um einen ganzzahligen Wert handeln. Es werden keine Zeichen zurückgegeben, wenn der Wert num_chars größer ist als die Länge der Zeichenfolge. Wenn num_chars nicht angegeben ist, werden standardmäßig alle Zeichen nach dem Anfangszeichen zurückgegeben.

Ein Dataset mit Schulen in Kalifornien enthält Felder für Adresse, Stadt und Postleitzahl. Der Straßenname kann mit der Funktion MID() von der Adresse isoliert werden:

  • Funktionssyntax: MID(Address, 5, 20)
  • Beispielfeldwerte:
    • Address = "380 New York St"
  • Ergebnistext: "New York St"

RIGHT(text, [num_chars])

Gibt einen Teil eines Textfeldes zurück.

  • num_chars: Legt fest, wie viele Zeichen des Ausdrucks zurückgegeben werden. Es muss sich um einen ganzzahligen Wert handeln. Die Anzahl der Zeichen wird von rechts nach links, von der letzten Position ausgehend, ermittelt. Wenn num_chars nicht angegeben wird, wird standardmäßig ein Zeichen verwendet.

Ein Dataset mit Nationalparks enthält ein Feld mit dem Namen des Parks und dem zweistelligen Bundesland-Code. Um die Parks nach Bundesland zu symbolisieren, wird ein neues Feld hinzugefügt und mit der Funktion RIGHT() berechnet:

  • Funktionssyntax: RIGHT(Park, 2)
  • Beispielfeldwerte:
    • Park = "Hawai'i Volcanoes National Park, HI"
  • Ergebnistext: "HI"

SUBSTITUTE(source_text, old_text, new_text)

Ersetzen Sie den alten Text in einer Zeichenfolge durch den festgelegten neuen Text.

  • source_text: Der ursprüngliche Text bzw. das ursprüngliche Feld mit Text
  • old_text: Der in source_text enthaltene Text, der ersetzt werden soll
  • new_text: Der Text, der old_text ersetzen soll

Ein Dataset mit Schlaglöchern enthält ein Feld mit Straßennamen. Das Dataset muss aktualisiert werden, wenn "Main Street" in "5th Street" umbenannt wird. Das Feld street_name kann mit der Funktion SUBSTITUTE() aktualisiert werden:

  • Funktionssyntax: SUBSTITUTE(street_name, "Main", "5th")

Hinweis:

Die Funktion SUBSTITUTE() ersetzt alle Vorkommnisse von old_text durch new_text. Bei der Funktion SUBSTITUTE("aba", "a", "c") beispielsweise lautet der Ergebnistext "cbc".

TRIM(text)

Gibt die Zeichenfolge zurück, wobei die zusätzlichen Leerzeichen an den Enden entfernt wurden.

Ein Feature-Service enthält Textfelder mit zusätzlichen Leerzeichen am Anfang und Ende seiner Werte. Die zusätzlichen Leerzeichen können mit der Funktion TRIM() entfernt werden:

  • Funktionssyntax: TRIM(City)
  • Beispielfeldwerte:
    • City = " Redlands "
  • Ergebnistext: "Redlands"

UPPER(text)

Gibt einen Zeichenausdruck mit allen Daten zurück, die in Großbuchstaben konvertiert wurden.

Ein Dataset mit Positionen von NGO-Hauptsitzen enthält ein Feld mit den vollständigen Namen der Organisationen und, falls vorhanden, ihren Akronymen. Die Akronyme können mit der Funktion UPPER() so standardisiert werden, dass nur noch Großbuchstaben verwendet werden:

  • Funktionssyntax: UPPER(Org)
  • Beispielfeldwerte:
    • Org = "Nasa"
  • Ergebnistext: "NASA"

VALUE(text, [format])

Konvertiert Text in eine Zahl.

  • format: Gibt das Zeichen an, das als Dezimaltrennzeichen in der Zahl verwendet wird. Als format kann ein Dezimalkomma (",") oder ein Dezimalpunkt (".") verwendet werden. Wenn kein format angegeben wird, ist das Standardtrennzeichen ein Dezimaltrennzeichen.

Hinweis:

In der Funktion VALUE() geschachtelte Funktionen können unerwartete Ergebnisse ausgeben, wenn format nicht angegeben wird. Daher empfiehlt es sich bei Verwendung der Funktion VALUE(), eine Angabe für format zu machen.

Die Funktion VALUE() unterstützt die Konvertierung von Text in negative Zahlen zurzeit nicht.

Ein Dataset mit Einzelhandelsgeschäften verfügt über ein Kategoriefeld mit den Umsatzzahlen. Das Feld Revenue kann mit der Funktion VALUE() in numerische Werte konvertiert werden.

  • Funktionssyntax: VALUE(Revenue, ".")
  • Beispielfeldwerte:
    • Revenue = "1.000,00"
  • Ergebniszahl: 1000.00

Numerische Funktionen

Numerische Funktionen verwenden Zahleneingaben, um Zahlenausgaben zu erzeugen. Numerische Funktionen werden meist zusammen mit anderen Funktionen oder als Methode zum Transformieren von Daten verwendet.

Eingabezahlen können Literalzahlen oder Zahlenfelder sein. In einigen der nachfolgenden Beispielen werden Zahlen statt Felder als Eingabe verwendet, um die Nutzung der einzelnen Funktionen besser darzustellen.

SyntaxBeschreibungBeispiel

ABS(number)

Gibt den absoluten Wert zurück.

  • Funktionssyntax: ABS(-350)
  • Ergebniszahl: 350

AVG(number)

Gibt den Mittelwert zurück.

  • Funktionssyntax: AVG(field)
  • Beispiel-Zahlenwerte für field: 4, 5, 11, 6.5
  • Ergebnis: 6,63

CEILING(number)

Rundet eine Zahl auf das nächste Vielfache von 1 auf.

  • Funktionssyntax: CEILING(7.8)
  • Ergebniszahl: 8

COS(number)

Der trigonometrische Kosinus des angegebenen Winkels in Radianten.

Mit der folgenden Formel lassen sich Grad in Radianten konvertieren:

Radiant = θπ/180 wobei: θ = Winkel in Grad π ≈ 3,14

  • Funktionssyntax: COS(0.35)
  • Ergebniszahl: 0,94

FLOOR(number)

Rundet eine Zahl auf das nächste Vielfache von 1 ab.

  • Funktionssyntax: FLOOR(7.8)
  • Ergebniszahl: 7

LN(number)

Der natürliche Algorithmus des angegebenen Float-Ausdrucks. Der natürliche Algorithmus verwendet die Konstante e als Basiswert (ca. 2,72)

  • Funktionssyntax: LN(16)
  • Ergebniszahl: 2,77

LOG(number)

Der Logarithmus einer Zahl zu einer bestimmten Basis. Der Standardwert ist 10.

  • Funktionssyntax: LOG(16, 2)
  • Ergebniszahl: 4

MAX(number) oder MAX(date)

Gibt den Maximalwert zurück.

  • Funktionssyntax: MAX(num_field)
  • Beispielwerte für num_field: 4, 5, 11, 6.5
  • Ergebnis: 11

MIN(number) oder MIN(date)

Gibt den Minimalwert zurück.

  • Funktionssyntax: MIN(date_field)
  • Beispielwerte für date_field: 03/17/2018, 02/14/2019, 10/31/2020
  • Ergebnis: 03/17/2018

PERCENTTOTAL(number)

Berechnet unter Verwendung des Feldgesamtwertes den Prozentsatz jedes Feldwertes.

  • Funktionssyntax: PERCENTTOTAL(num_field)
  • Beispielwerte für num_field: 4, 5, 11, 6.5
  • Ergebnisse: 0.1509, 0.1887, 0.4151, 0.2453

POWER(number, power)

Der Wert des Ausdrucks potenziert mit der angegebenen Potenz.

  • Funktionssyntax: POWER(2, 4)
  • Ergebniszahl: 16

ROUND(number, num_digits)

Rundet numerische Werte auf die angegebene Anzahl der Dezimalstellen.

  • num_digits = Anzahl der Dezimalstellen der Ausgabe
    • Wenn num_digits positiv ist, wird die Zahl auf die entsprechende Anzahl von Dezimalstellen gerundet.
    • Wenn num_digits Null ist, wird die Zahl auf den nächsten ganzzahligen Wert gerundet.
    • Wenn num_digits negativ ist, wird die Zahl auf die angegebene Anzahl der Dezimalstellen links neben dem Dezimaltrennzeichen gerundet.

  • Funktionssyntax: ROUND(54.854827, 2)
  • Ergebniszahl: 54,85
  • Funktionssyntax: ROUND(54.854827, -1)
  • Ergebniszahl: 50

SIN(number)

Der trigonometrische Sinus des angegebenen Winkels in Radianten.

Mit der folgenden Formel lassen sich Grad in Radianten konvertieren:

Radiant = θπ/180 wobei: θ = Winkel in Grad π ≈ 3,14

  • Funktionssyntax: SIN(0.79)
  • Ergebniszahl: 0,71

STDEV(number)

Die Standardabweichung eines Zahlenfeldes

  • Funktionssyntax: STDEV(field)
  • Beispiel-Zahlenwerte für field: 4, 5, 11, 6.5
  • Ergebnis: 3,09

SUM(number)

Gibt den Gesamtwert zurück.

  • Funktionssyntax: SUM(field)
  • Beispiel-Zahlenwerte für field: 4, 5, 11, 6.5
  • Ergebnis: 26,5

TAN(number)

Den Tangens des Eingabe-Ausdrucks zurückgeben.

Mit der folgenden Formel lassen sich Grad in Radianten konvertieren:

Radiant = θπ/180 wobei: θ = Winkel in Grad π ≈ 3,14

  • Funktionssyntax: TAN(1.05)
  • Ergebniszahl: 1.74

Datumsfunktionen

Datumsfunktionen können je nachdem, welche Funktion verwendet wird, Datumsfelder, Text oder keine Eingabe verwenden. Die Funktion DATEVALUE() kann zum Ersetzen eines Datumsfeldes in der Funktion DATEDIF() oder TIMEDIF() verwendet werden.

Hinweis:

In DATEDIF() und DATEADD()verwendete Datums-/Uhrzeitfelder müssen in einem Format mit Datum (d. h. Datum und Uhrzeit oder nur Datum) vorliegen. Datums-/Uhrzeitfelder mit reinem Uhrzeitwert werden nicht akzeptiert.

In TIMEDIF() verwendete Datums-/Uhrzeitfelder müssen in einem Format mit Uhrzeit (d. h. Datum und Uhrzeit oder nur Uhrzeit) vorliegen. Datums-/Uhrzeitfelder mit reinem Datumswert werden nicht akzeptiert.

Die folgenden Datumstrennzeichen werden unterstützt: Punkt (.), Bindestrich (-) und Schrägstrich (/).

SyntaxBeschreibungBeispiel

DATE(year, month, day, [hour, minute, second], [AM/PM])

Erstellt ein Datums-/Uhrzeitfeld mit drei oder mehreren getrennten Feldern oder Werten. Die folgenden Spezifikationen sind gültig:

  • year: "YY" (zweistellige Jahresangabe) oder "YYYY" (vierstellige Jahresangabe)
  • month: "MM" (1-12)
  • day: "DD" (1-31)
  • hour: "HH" (0-23) oder "hh" (1-12)
  • minute: "mm" (0-59)
  • second: "ss" (0-59)
  • AM/PM: "AM"/"PM" (Groß- und Kleinschreibung muss nicht beachtet werden)

Hinweis:

Alle Eingabefelder können Zahlen oder Zeichenfolgen sein, ausgenommen der AM/PM-Parameter. Zahlen müssen ganzzahlige Werte sein. Aus zwei Ziffern bestehende Jahresangaben müssen Zeichenfolgen sein.

Wenn Sie die Funktion DATE() mit einem Datenbank-Dataset verwenden und Zeitparameter angegeben haben (hour, minute oder second), müssen Sie einen Eingabewert für alle Zeitparameter eingeben.

Ein Dataset mit Restaurants enthält Zeichenfolgenfelder mit Datums- und Uhrzeitangaben der letzten Hygienekontrollen. Ein Datumsfeld für die Kontrollen kann mit der Funktion DATE() erstellt werden:

  • Funktionssyntax: DATE(2016, Month, Day, Hour, Min, 00)
  • Beispielfeldwerte:
    • Month = 8
    • Day = 15
    • Hour = 11
    • Minute = 30
  • Ergebnisdatum: 8/15/2016, 11:30:00

Hinweis:

Die Ergebnisdaten in diesem Beispiel liegen mit einer Stundenangabe im 24-Stunden-Format vor. Um eine Stundenangabe im 12-Stunden-Format zu verwenden, müssen Sie AM oder PM angeben. Dieselbe Beispielfunktion kann als DATE(2016, Month, Day, Hour, Min, 00, "AM") geschrieben werden.

TIME(hour, minute, second)

Erstellt ein Datums-/Uhrzeitfeld mit drei getrennten Feldern oder Werten. Die folgenden Spezifikationen sind gültig:

  • hour: "HH" (0-23) oder "hh" (1-12)
  • minute: "mm" (0-59)
  • second: "ss" (0-59)
  • AM/PM: "AM"/"PM" (Groß- und Kleinschreibung muss nicht beachtet werden)

Hinweis:

Alle Eingabefelder können Zahlen oder Zeichenfolgen sein, ausgenommen der AM/PM-Parameter. Zahlen müssen ganzzahlige Werte sein.

Ein Dataset mit Krankenhausdatensätzen enthält die Ankunftszeiten der Patienten. Ein Zeitfeld für die Datensätze kann mit der Funktion TIME() erstellt werden:

  • Funktionssyntax: TIME(Hour, Min, 00)
  • Beispielfeldwerte:
    • Hour = 11
    • Minute = 30
  • Ergebniszeit: 11:30:00

Hinweis:

Die Ergebniszeiten in diesem Beispiel liegen mit einer Stundenangabe im 24-Stunden-Format vor. Um eine Stundenangabe im 12-Stunden-Format zu verwenden, müssen Sie AM oder PM angeben. Dieselbe Beispielfunktion kann als TIME(Hour, Min, 00, "AM") geschrieben werden.

DATEADD(date, integer, [unit])

Addiert eine bestimmte Zeitspanne zu den Datumsangaben im Eingabefeld.

  • date muss ein Datums-/Uhrzeitfeld sein. Das Feld muss in einem Format mit Datum (d. h. Datum und Uhrzeit oder nur Datum) vorliegen. Datums-/Uhrzeitfelder mit reinem Uhrzeitwert werden nicht akzeptiert.
  • integer: Die Zahl, die zum Eingabedatum addiert werden soll. Wenn eine Konstante verwendet wird, muss die Zahl eine Ganzzahl sein und kann positiv oder negativ sein. Wenn ein Zahlenfeld verwendet wird, werden Dezimalstellen ignoriert. Daher empfiehlt es sich, ein Feld zu verwenden, das nur Ganzzahlen enthält, oder ein neues Feld mit Ganzzahlen zu berechnen (z. B. mithilfe der Funktion ROUND()).
  • unit: Die Zeiteinheit, die hinzugefügt werden soll. Folgende Einheitenwerte werden unterstützt:
    • "ss" = Sekunden
    • "mm" = Minuten
    • "h" = Stunden
    • "D" = Tage (Standard)
    • "M" = Monate
    • "Y" = Jahre

Wenn keine Einheit angegeben wird, wird "D" verwendet.

Wenn Monate zu einem Datums-/Uhrzeitfeld addiert werden, wird immer das gleiche Datum ausgegeben, unabhängig von der Anzahl der Tage im Monat. Wenn das Datum im neuen Monat nicht gültig ist, wird der letzte Tag des Monats verwendet. Wenn beispielsweise bei einer Berechnung drei Monate zum Eingabefeld addiert werden und eines der ursprünglichen Daten der 30. November 2021 ist, enthält der Ausgabewert das ungültige Datum 30. Februar 2022. Als Ergebnis wird dann der 28. Februar 2022 eingetragen, da 2022 kein Schaltjahr ist.

Eine Einrichtung des öffentlichen Gesundheitswesens ist für ein Impfregister der Patienten im Verwaltungsbezirk verantwortlich. Ein bestimmter Impfstoff besteht aus zwei Dosen, die im Abstand von mindestens 60 Tagen und nicht mehr als 180 Tagen verabreicht werden müssen. DATEADD() kann verwendet werden, um Felder mit dem frühesten und spätesten Datum für die zweite Dosis zu erstellen.

Frühestes Datum:

  • Funktionssyntax: DATEADD(first_dose_date, 60, "D")
  • Beispielfeldwerte:
    • first_dose_date = 11.07.2021
  • Ergebnisdatum: 09.09.2021

Spätestes Datum:

  • Funktionssyntax: DATEADD(first_dose_date, 180, "D")
  • Beispielfeldwerte:
    • first_dose_date = 11.07.2021
  • Ergebnisdatum: 07.01.2022

TIMEADD(time, integer, unit)

Addiert eine bestimmte Zeitspanne zur Zeit im Eingabefeld.

  • time muss ein Datums-/Uhrzeitfeld sein. Zeitspannen können zu allen Datums-/Zeitfeldern addiert werden, einschließlich zu den Feldern, die noch keine Zeitkomponente enthalten.
  • integer: Die Zahl, die zur Eingabe-Uhrzeit addiert werden soll. Wenn eine Konstante verwendet wird, muss die Zahl eine Ganzzahl sein und kann positiv oder negativ sein. Wenn ein Zahlenfeld verwendet wird, werden Dezimalstellen ignoriert. Daher empfiehlt es sich, ein Feld zu verwenden, das nur Ganzzahlen enthält, oder ein neues Feld mit Ganzzahlen zu berechnen (z. B. mithilfe der Funktion ROUND()).
  • unit: Die Zeiteinheit, die hinzugefügt werden soll. Folgende Einheitenwerte werden unterstützt:
    • "ss" = Sekunden
    • "mm" = Minuten
    • "h" = Stunden

Ein Dataset weist Datums- und Zeitinformationen in koordinierter Weltzeit (UTC) auf, die in Central Standard Time (CST) konvertiert werden müssen. Ein Datums-/Uhrzeitfeld mit Zeiten in CST kann mit der Funktion TIMEADD() erstellt werden:

  • Funktionssyntax: TIMEADD(UTC_date, -6, "h")
  • Beispielfeldwerte:
    • UTC_date = 11.07.2021 14:30:00
  • Ergebnisdatum: 11.07.2021, 08:30:00

DATEDIF(start_date, end_date, [unit])

Berechnet die verstrichene Zeit zwischen zwei Datumsangaben. start_date muss vor end_date liegen, andernfalls ist die Ausgabe ein negativer Wert.

  • start_date und end_date können Datums-/Uhrzeitfelder oder eine DATEVALUE()-Funktion sein. Bei Verwendung von Datums-/Uhrzeitfeldern muss das Feld in einem Format mit Datum (d. h. Datum und Uhrzeit oder nur Datum) vorliegen. Datums-/Uhrzeitfelder mit reinem Uhrzeitwert werden nicht akzeptiert.
  • unit: Die Zeiteinheit, die zurückgegeben werden soll. Folgende Einheitenwerte werden unterstützt:
    • "ss" = Sekunden
    • "mm" = Minuten
    • "h" = Stunden
    • "D" = Tage (Standard)
    • "M" = Monate
    • "Y" = Jahre

Wenn keine Einheit angegeben wird, wird "D" verwendet.

Die Ergebnisse der einzelnen Einheiten werden wie folgt gerundet:

  • Sekunden: Sekunden werden nicht gerundet.
  • Minuten: Wenn zwischen zwei Daten 60 Sekunden liegen, wird eine Minute gezählt. Unvollständige Minuten werden abgerundet.
  • Stunden: Wenn zwischen zwei Daten 60 Minuten liegen, wird eine Stunde gezählt. Unvollständige Stunden werden abgerundet.
  • Tage: Wenn zwischen zwei Daten 24 Stunden liegen, wird ein Tag gezählt. Unvollständige Tage werden abgerundet.
  • Monat: Wenn zwischen zwei Daten ein ganzer Monat liegt, wird ein Monat gezählt (z. B. 1. Januar bis 1. Februar). Dabei ist es egal, wie viele Tage der Monat hat. Unvollständige Monate werden abgerundet. Zeitkomponenten wie Stunden werden in der Berechnung nicht berücksichtigt.
  • Jahr: Wenn zwischen zwei Daten 183 Tage (ein halbes Jahr) liegen, wird ein Jahr gezählt. Unvollständige Jahre mit weniger als 183 Tagen werden abgerundet.

Ein Dataset mit Restaurants enthält die Datumsangaben ihrer letzten Hygienekontrollen. Die Anzahl der Tage, die zwischen Hygienekontrollen verstrichen sind, können mit der Funktion DATEDIF() berechnet werden:

Beispiel 1:

  • Funktionssyntax: DATEDIF(Inspection1, Inspection2, "D")
  • Beispielfeldwerte:
    • Inspection1 = 8/15/2016, 11:30:00 AM
    • Inspection2 = 10/31/2016 2:30:00 PM
  • Ergebniszeit (Tage): 77

Beispiel 2:

  • Funktionssyntax: DATEDIF(Inspection1, Inspection2, "D")
  • Beispielfeldwerte:
    • Inspection1 = 8/15/2016, 11:30:00 AM
    • Inspection2 = 8/16/2016 8:00:00 AM
  • Ergebniszeit (Tage): 0

Beispiel 3:

  • Funktionssyntax: DATEDIF(Inspection1, Inspection2, "M")
  • Beispielfeldwerte:
    • Inspection1 = 8/15/2016, 11:30:00 AM
    • Inspection2 = 10/31/2016 2:30:00 PM
  • Ergebniszeit (Monate): 2

TIMEDIF(start_time, end_time, [unit])

Berechnet die verstrichene Zeit zwischen zwei Datums-/Uhrzeitwerten. start_time muss vor end_time liegen, andernfalls ist die Ausgabe ein negativer Wert.

  • start_time und end_time können Datums-/Uhrzeitfelder oder eine DATEVALUE()-Funktion sein. Wenn eine Uhrzeit verwendet wird (z. B. hh:mm:ss), müssen sowohl start_time als auch end_time ein reines Zeitformat aufweisen.
  • unit: Die Zeiteinheit, die zurückgegeben werden soll. Folgende Einheitenwerte werden unterstützt:
    • "ss" = Sekunden (Standard)
    • "mm" = Minuten
    • "h" = Stunden

Wenn keine Einheit angegeben wird, wird "ss" verwendet.

Die Ergebnisse der einzelnen Einheiten werden wie folgt gerundet:

  • Sekunden: Sekunden werden nicht gerundet.
  • Minuten: Wenn zwischen zwei Daten 60 Sekunden liegen, wird eine Minute gezählt. Unvollständige Minuten werden abgerundet.
  • Stunden: Wenn zwischen zwei Daten 60 Minuten liegen, wird eine Stunde gezählt. Unvollständige Stunden werden abgerundet.

Ein Dataset mit Krankenhaus-Operationsdatensätzen enthält die Start- und Endzeit von operativen Eingriffen. Die Operationsdauer jedes Patienten kann mit der Funktion TIMEDIF() berechnet werden:

  • Funktionssyntax: TIMEDIF(TimeIn, TimeOut, "mm")
  • Beispielfeldwerte:
    • TimeIn = 11:30:00 AM
    • TimeOut = 2:30:20 PM
  • Ergebniszeit (Minuten): 180

DATEVALUE(date_text, [format])

Konvertiert Text in ein Datum.

  • date_text kann ein Zeichenfolgenfeld oder in Anführungszeichen eingegebener Text sein.
  • format (optional): Das Format des eingegebenen Datums. Der Wert für format wird als Text in Anführungszeichen eingegeben. format kann mit den folgenden Einheitenspezifikationen angegeben werden:
    • "MM": Monat (1–12)
    • "DD": Tag des Monats (1–31)
    • "YY": zweistelliges Jahr
    • "YYYY": vierstelliges Jahr
    • "HH": Stunde (0–23)
    • "hh": Stunde (1-12)
    • "mm": Minuten (0–59)
    • "ss": Sekunden (0–59)
    • "AM"/"PM": Groß- und Kleinschreibung muss nicht beachtet werden

Hinweis:

In der Funktion DATEVALUE() geschachtelte Funktionen können unerwartete Ergebnisse ausgeben, wenn format nicht angegeben wird. Daher empfiehlt es sich, format anzugeben, wenn Funktionen in DATEVALUE() geschachtelt werden.

Daten, die ohne Trennzeichen angegeben werden (z. B. "10312016") werden als Millisekunden behandelt, wenn format nicht festgelegt wird. Daher empfiehlt es sich, beim Eingeben von Daten ohne Trennzeichen ein Format anzugeben.

Für Daten, die mit Trennzeichen, aber ohne format angegeben werden, wird das Format geschätzt. Wenn das Format nicht geschätzt werden kann, wird das Standardformat "MM-DD-YY" angewendet.

Die Funktion DATEVALUE() kann nur Text lesen, der in Anführungszeichen oder Zeichenfolgenfeldern eingegeben wurde. Ein Datums-/Uhrzeitfeld kann nicht als DATEVALUE()-Funktion verwendet werden.

Ein Dataset mit Restaurants enthält die Datumsangaben ihrer letzten Hygienekontrollen. Die Anzahl der seit der letzten Kontrolle verstrichenen Tage lässt sich mit der Funktion DATEVALUE() berechnen, mit der das aktuelle Datum festgelegt wird:

  • Funktionssyntax: DATEDIF(Inspection_date, DATEVALUE("10/31/2016", "MM/DD/YYYY"), "D")
  • Beispielfeldwerte:
    • Inspection_date = 8/15/2016, 11:30:00 AM
  • Ergebniszahl: 77

Datums- und Uhrzeitangaben können auf unterschiedliche Weisen formatiert werden. Im Folgenden sind einige Beispiele zur Formatierung von Text in Datumsangaben aufgeführt:

  • DATEVALUE("12/25/2016 12:30:25 pm", "MM/DD/YYYY hh:mm:ss pm")
  • DATEVALUE("12/25/2016 14:23:45", "MM/DD/YYYY HH:mm:ss")
  • DATEVALUE("25-08-2008 08:40:13 AM", "DD/MM/YYYY hh:mm:ss AM")

NOW()

Gibt das aktuelle Datum und die aktuelle Uhrzeit im Datums-/Uhrzeitformat zurück. Die Zeit wird basierend auf der koordinierten Weltzeit (UTC) erfasst.

Ein Dataset mit Restaurants enthält die Datumsangaben ihrer letzten Hygienekontrollen. Die Anzahl der seit der letzten Kontrolle verstrichenen Tage lässt sich mit der Funktion NOW() berechnen, mit der das aktuelle Datum festgelegt wird:

  • Funktionssyntax: DATEDIF(Inspection_date, NOW(), "D")
  • Beispielfeldwerte:
    • Inspection_date= 8/15/2016, 11:30:00 AM
  • Ergebniszahl: 77

Logische Funktionen

Logische Funktionen verwenden Zeichenfolgen- oder Zahleneingaben, um Zeichenfolgen- oder Zahlenausgaben zu erzeugen. Die Eingaben können Literal- (Text oder konstante Zahlen in Anführungszeichen) oder Feldwerte sein. Die folgende Tabelle verwendet eine Kombination aus Feld- und Literal-Werten für Beispiele und Beispielwerte, die in den angegebenen Feldern enthalten sein können.

SyntaxBeschreibungBeispiel

AND(condition,condition, ...)

Testet mindestens zwei Bedingungen und gibt TRUE zurück, wenn alle Bedingungen erfüllt sind. AND() sollte im Parameter condition der Funktion IF() verwendet werden.

  • condition: Ein beliebiger Ausdruck, der mindestens einen konditionalen Operator enthält. Die Bedingung kann numerische, Zeichenfolgen- und Feldwerte umfassen. Die folgenden konditionalen Operatoren können verwendet werden:
    • >: größer als
    • <: kleiner als
    • >=: größer als oder gleich
    • <=: kleiner als oder gleich
    • =: gleich
    • <>: ungleich

Ein Dataset enthält ein Durchschnittsalter von Menschen, die in jeder Blockgruppe leben. Ein Marktforscher möchte wissen, in welchen Blockgruppen überwiegend Bewohner der Millennium-Generation leben. Die Blockgruppen mit einem Durchschnittsalter, das innerhalb der Altersgruppe der Millennials liegt, können durch eine Kombination der Funktionen IF() und AND() ermittelt werden:

  • Funktionssyntax: IF(AND(MeanAge>=18, MeanAge<=33),"Millennial","Other")
  • Beispielfeldwert:
    • MeanAge = 43
  • Ergebnistext: "Other"

IF(condition, TRUE_expression, [FALSE_expression])

Testet eine Bedingung und gibt basierend auf dem Ergebnis den Wert TRUE oder FALSE zurück.

  • condition: Ein beliebiger Ausdruck, der mindestens einen konditionalen Operator enthält. Die Bedingung kann numerische, Zeichenfolgen- und Feldwerte umfassen. Die folgenden konditionalen Operatoren können verwendet werden:
    • >: größer als
    • <: kleiner als
    • >=: größer als oder gleich
    • <=: kleiner als oder gleich
    • =: gleich
    • <>: ungleich
  • TRUE_expression: Der Ausdruck, der verwendet wird, wenn die Bedingung wahr (true) ist. Dieser Parameter ist obligatorisch.
  • FALSE_expression: Der Ausdruck, der verwendet wird, wenn die Bedingung falsch (false) ist. Wenn FALSE_expression nicht angegeben ist, ist der Standardwert null.

TRUE_expression und FALSE_expression können ein beliebiger gültiger Ausdruck sein, einschließlich einer geschachtelten IF()-Funktion. Der Datentyp für TRUE_expression und FALSE_expression sollte vom selben Typ sein (z. B. jeweils Zeichenfolgen oder jeweils Zahlen).

Ein Dataset enthält Felder mit Geschäftsumsatz und -kosten, anhand derer der Status der Geschäfte ermittelt werden kann (ob sie einen Nettogewinn oder Nettoverlust verzeichnen). Der Status der einzelnen Geschäfte kann mit der Funktion IF() ermittelt werden:

  • Funktionssyntax: IF(Revenue>Expenses, "Profit","Loss")
  • Beispielfeldwerte:
    • Revenue = 400.000
    • Expenses = 350.000
  • Ergebnistext: "Profit"

ISNULL(field)*

Überprüft, ob Werte in einem Feld NULL sind. Wenn der überprüfte Wert nicht NULL ist, wird der Ausgabewert 0 zugewiesen, und wenn der überprüfte Wert NULL ist, wird der Ausgabewert 1 zugewiesen.

  • field: Unterstützt Zeichenfolgen-, Zahlen-, Anteil/Verhältnis- und Datums-/Uhrzeitfelder.

ISNULL() kann alleine oder im Parameter condition der Funktion IF() verwendet werden.

Ein Dataset enthält Unfallorte von Fahrradzusammenstößen sowie die Art des Fahrradweges für die Straße, auf der sich der Zusammenstoß ereignet hat. Bei Zusammenstößen, die sich auf einer Straße ohne Fahrradweg ereigneten, wird das Feld RouteType leer gelassen. Das Dataset kann durch eine Kombination der Funktionen IF() und ISNULL() so aktualisiert werden, dass NULL-Werte befüllt werden:

  • Funktionssyntax: IF(ISNULL(RouteType), "None", RouteType)

ISNOTNULL(field)*

Überprüft, ob Werte in einem Feld nicht NULL sind. Wenn der überprüfte Wert NULL ist, wird der Ausgabewert 0 zugewiesen, und wenn der überprüfte Wert nicht NULL ist, wird der Ausgabewert 1 zugewiesen.

  • field: Unterstützt Zeichenfolgen-, Zahlen-, Anteil/Verhältnis- und Datums-/Uhrzeitfelder.

ISNOTNULL() kann alleine oder im Parameter condition der Funktion IF() verwendet werden.

Ein Dataset enthält Unfallorte von Fahrradzusammenstößen sowie die Art des Fahrradweges für die Straße, auf der sich der Zusammenstoß ereignet hat. Bei Zusammenstößen, die sich auf einer Straße ohne Fahrradweg ereigneten, wird das Feld RouteType leer gelassen. Das Dataset kann durch eine Kombination der Funktionen IF() und ISNOTNULL() so aktualisiert werden, dass NULL-Werte befüllt werden:

  • Funktionssyntax: IF(ISNOTNULL(RouteType), RouteType, "None")

OR(condition,condition, ...)

Testet mindestens zwei Bedingungen und gibt TRUE zurück, wenn mindestens eine Bedingung erfüllt ist. OR() sollte im Parameter condition der Funktion IF() verwendet werden.

  • condition: Ein beliebiger Ausdruck, der mindestens einen konditionalen Operator enthält. Die Bedingung kann numerische, Zeichenfolgen- und Feldwerte umfassen. Die folgenden konditionalen Operatoren können verwendet werden:
    • >: größer als
    • <: kleiner als
    • >=: größer als oder gleich
    • <=: kleiner als oder gleich
    • =: gleich
    • <>: ungleich

Ein Dataset enthält Standorte von verübten Straftaten ("larceny") in einer Stadt. Bei einer Kriminalitätsanalyse soll das Diebstahlmuster im Vergleich zu anderen ähnlichen Delikten verglichen werden. Um Diebstähle mit anderen Delikten zu vergleichen, muss der Analyst zunächst ermitteln, ob die jeweiligen Delikte als Diebstahl gelten. Der Straftattyp kann mithilfe einer Kombination der Funktionen IF() und OR() ermittelt werden:

  • Funktionssyntax: IF(OR(Crime="Theft", Crime="Theft from vehicle", Crime="Shoplifting"), "Larceny", "Other")
  • Ergebnistext: "Larceny"

* Einige Felder ohne Daten sind ggf. als leere Werte und nicht als NULL-Werte konfiguriert. In diesen Fällen geben ISNULL() und ISNOTNULL() nicht die erwarteten Ergebnisse zurück. Stattdessen sollte anstelle von ISNULL(field) und ISNOTNULL(field) der Ausdruck field="" bzw. field<>"" verwendet werden.