Skip to main content

Feld berechnen (Data Management Tools)

Zusammenfassung

Hiermit werden die Werte eines Feldes für eine Feature-Class, einen Feature-Layer oder ein Raster berechnet.

Verwendung

Achtung:

Mit diesem Werkzeug werden die Eingabedaten geändert. Weitere Informationen und Strategien zur Vermeidung unerwünschter Datenänderungen finden Sie unter "Werkzeuge, die Eingabedaten ändern oder aktualisieren".

  • Weitere Informationen zu Python-Ausdrücken finden Sie unter "Feld berechnen: Python-Beispiele".

    Weitere Informationen zu Arcade-Ausdrücken finden Sie unter "ArcGIS Arcade" in der Hilfe für Entwickler.

    Weitere Informationen zu SQL-Ausdrücken finden Sie unter "Syntax für einen SQL-Ausdruck" und "Berechnen von Feldwerten".

    Weitere Informationen über VBScript-Ausdrücke finden Sie unter "Feld berechnen – VBScript-Beispiele".

  • Die Arcade-Ausdrücke dieses Werkzeugs verwenden das Arcade-Profil "Feldberechnung". Ein Arcade-Profil ist ein Kontext, in dem ein Arcade-Ausdruck ausgewertet und verstanden wird. Wenn ein Arcade-Ausdruck ausgewertet wird, wird der Rückgabewert in den Feldtyp des Ausgabewerts umgewandelt.

  • Bei Verwendung mit einem ausgewählten Feature-Satz, wie zum Beispiel den mit einer Abfrage im Werkzeug Feature-Layer erstellen oder Layer nach Attributen auswählen erstellten Features, werden nur die ausgewählten Datensätze aktualisiert.

    Achtung:

    Mit Windows 11, Version 24H2, wird VBScript zu einem Feature on Demand und erfordert die VBScript-Funktion.

    Führen Sie einen der folgenden Schritte aus, um die Option VBScript weiterhin zu verwenden:

    • Konvertieren Sie den Ausdruckstyp in Python, Arcade oder SQL.

    • Aktivieren Sie die optionale VBScript-Unterstützung in den Windows-Systemeinstellungen.

    Weitere Informationen finden Sie unter Hinweise zur Abkündigung und zu veralteten Funktionen.

  • Sie können die Berechnung jeweils nur für ein Feld durchführen. Für mehrere Berechnungen verwenden Sie das Werkzeug ** Felder berechnen**.

  • Vorhandene Feldwerte werden überschrieben. Um die ursprünglichen Werte beizubehalten, erstellen Sie eine Kopie der Eingabetabelle als Sicherung, oder verwenden Sie die Option Rückgängig aktivieren im Bereich Geoverarbeitung.

  • Bei Berechnungen mit Python müssen Feldnamen in Ausrufezeichen eingeschlossen werden (z. B. !fieldname!).

    Bei Berechnungen mit Arcade müssen Feldnamen das Präfix $feature. (beispielsweise $feature.fieldname) erhalten.

    Hinweis:

    Um Zeitwerte zwischen Feldtypen (Datum, Nur Datum, Nur Zeit, Zeitstempelversatz und Text) zu übertragen, verwenden Sie stattdessen das Werkzeug [Zeitfeld](convert-time-field.yml) konvertieren.

  • Wenn Sie eine Zeichenfolge für ein Text- oder Zeichenfeld berechnen möchten, muss die Zeichenfolge im Dialogfeld in doppelte Anführungszeichen (z. B. "Zeichenfolge") gesetzt werden, in Skripten dagegen muss die Zeichenfolge zusätzlich in einfache Anführungszeichen eingeschlossen werden (z. B. '"string"').

  • Wenn Sie einen numerischen Wert für ein Feld berechnen möchten, geben Sie im Parameter Ausdruck nur den numerischen Wert ohne Anführungszeichen an.

    Legacy:

    arcgis.rand() wird ab ArcGIS Pro 2.0 nicht mehr unterstützt. Stattdessen sollten Funktionen, in denen das Python-Modul random verwendet wird, verwendet werden. Fügen Sie das Modul random als Import in den Parameter Code-Block ein, um es erfolgreich nutzen zu können.

  • Sie können komplexe Ausdrücke mit dem Parameter Code-Block erstellen. Geben Sie den Codeblock direkt im Dialogfeld oder als Zeichenfolge bei der Skripterstellung ein. Der Ausdruck und der Code-Block sind miteinander verbunden. Der Code-Block muss zurück auf den Ausdruck verweisen. Das Ergebnis des Code-Blocks muss an den Ausdruck übergeben werden.

    Der Parameter Code-Block wird nur für Python-Ausdrücke unterstützt.

  • Sie können das Python-Modul math und die Formatierung im Code-Block verwenden. Sie können auch weitere Module importieren. Das Modul math enthält neben zahlentheoretischen und Repräsentationsfunktionen auch Potenz- und Logarithmusfunktionen sowie trigonometrische Funktionen, Winkelkonvertierungsfunktionen, hyperbolische Funktionen und mathematische Konstanten. Weitere Informationen zum Modul math finden Sie in der Hilfe von Python.

  • Zum Berechnen von Geometrieinformationen in Python verwenden Sie Geometry-Objekteigenschaften. Verwenden Sie beispielsweise zum Berechnen der Anzahl der Stützpunkte in einem Feature den Ausdruck !shape!.pointCount!.

    Hinweis:

    Das Werkzeug Geometrieattribute berechnen berechnen unterstützt ähnliche Berechnungen.

    Zum Berechnen der Fläche und Länge in Python verwenden Sie die Methoden getArea und getLength mit einer Methode und einem Einheitstyp.

    • Zum Berechnen der geodätischen Fläche von Polygonen in Quadratkilometern verwenden Sie den folgenden Ausdruck:

      !shape!.getArea('GEODESIC', 'SQUAREKILOMETERS')!

    • Zum Berechnen der planaren Länge von Polylinien (oder Polygonen) in Yards verwenden Sie den folgenden Ausdruck:

      !shape!.getLength('PLANAR', 'YARDS')

    Weitere Informationen finden Sie unter "ArcPy- Polygon- und Polyline-Objekte".

    Weitere Informationen zu Geoverarbeitungswerkzeugen und linearen Einheiten sowie Flächeneinheiten

  • ArcGIS-Anwendungen verwenden UTF-16-LE-Codierung zum Lesen und Schreiben von .cal-Dateien. Andere Anwendungen (z. B. Notepad) können zum Erstellen oder Ändern von .cal-Dateien verwendet werden, solange die Datei mit UTF-16-LE-Codierung geschrieben wird. Eine Datei mit einer anderen Codierung wird im Codeblock nicht geladen.

  • Python- und SQL-Ausdrücke, bei denen versucht wird, Zeichenfolgenfelder, die NULL enthalten oder einen durch Null geteilten Wert, zu verbinden, geben NULL für diesen Feldwert zurück.

    Hinweis:

    Mit einem SQL-Ausdruck zum Verknüpfen von Zeichenfolgenfeldern in einer Mobile-Geodatabase werden Werte kombiniert, wobei NULL-Werte ignoriert werden.

  • Beim Arbeiten mit verbundenen Daten können Sie nur Felder aus der Quelltabelle aktualisieren. Sie können keine Felder aus der verbundenen Tabelle aktualisieren. Zum Durchführen einer Berechnung für die verbundene Tabelle führen Sie die Berechnung direkt für die Tabelle durch.

  • SQL-Ausdrücke ermöglichen schnellere Berechnungen für Feature-Services und Enterprise-Geodatabases. Statt Features oder Zeilen einzeln nacheinander zu berechnen, wird eine einzelne Anforderung an den Server oder die Datenbank gesendet. Dies führt zu schnelleren Berechnungen.

    Feature-Services, Enterprise-Geodatabases, Mobile-Geodatabases, File-Geodatabases, Datenbanken, SQLite und GeoPackage unterstützen SQL-Ausdrücke. Verwenden Sie für andere Formate Python- oder Arcade-Ausdrücke.

    Die Verwendung der Option SQL des Parameters Ausdruckstyp unterliegt den folgenden Beschränkungen:

    • Die Option wird nur für File-Geodatabases und Mobile-Geodatabases, Db2, Oracle, PostgreSQL, SAP HANA und SQL Server (mit oder ohne enthaltener Enterprise-Geodatabase), SQLite und GeoPackage unterstützt.

    • Die Berechnung von Feldwerten in verbundenen Tabellen wird nicht unterstützt.

    • Versionierte und archivierte Enterprise-Geodatabase-Daten werden nicht unterstützt.

    • Das Rückgängigmachen von Geoverarbeitungsvorgängen wird nicht unterstützt.

    Hilfe zu SQL-Ausdrücken finden Sie in der Dokumentation Ihres Datenbankanbieters.

  • Der Parameter Ausdruck im Dialogfeld des Werkzeugs enthält eine Dropdown-Liste Werte einfügen, in der Sie Feldwerte aus dem ausgewählten Feld in der Liste Felder oder Domänenwerte aus der Domäne des ausgewählten Feldes hinzufügen können. Verwenden Sie die Domänenwerte, um sicherzustellen, dass nur gültige Werte für die Felddomäne in das Feld eingefügt werden.

Parameter

Beschriftung Erläuterung Datentyp

Eingabetabelle

Die Tabelle, die das Feld enthält, das mit der neuen Berechnung aktualisiert wird.

Mosaic Layer; Raster Layer; Table View

Feldname (vorhanden oder neu)

Das Feld, das mit der neuen Berechnung aktualisiert wird.

Wenn unter dem angegebenen Namen kein Feld in der Eingabetabelle vorhanden ist, wird ein entsprechendes Feld hinzugefügt.

Field

Ausdruck

Der einfache Berechnungsausdruck, der zum Erstellen eines Werts verwendet wird, der die ausgewählten Zeilen ausfüllt.

SQL Expression

Ausdruckstyp

(Optional)

Gibt den zu verwendenden Ausdruckstyp an.

Wenn die Eingabe ein Feature-Service ist, lautet der Standardausdruckstyp SQL. Für alle anderen Eingabearten lautet der Standardausdruckstyp Python.

Weitere Informationen zu Python-Ausdrücken finden Sie unter "Feld berechnen: Python-Beispiele".

Weitere Informationen zu Arcade-Ausdrücken finden Sie unter "ArcGIS Arcade" in der Hilfe für Entwickler.

Weitere Informationen zu SQL-Ausdrücken finden Sie unter "Syntax für einen SQL-Ausdruck" und "Berechnen von Feldwerten".

SQL-Ausdrücke ermöglichen schnellere Berechnungen für Feature-Services und Enterprise-Geodatabases. Statt Features oder Zeilen einzeln nacheinander zu berechnen, wird eine einzelne Anforderung an den Server oder die Datenbank gesendet. Dies führt zu schnelleren Berechnungen.

Nur Feature-Services, Enterprise-Geodatabases, Mobile-Geodatabases, File-Geodatabases, Datenbanken, SQLite und GeoPackage unterstützen SQL-Ausdrücke. Verwenden Sie für andere Formate Python- oder Arcade-Ausdrücke.

Weitere Informationen über VBScript-Ausdrücke finden Sie unter "Feld berechnen – VBScript-Beispiele".

  • PythonEs wird der Ausdruckstyp "Python" verwendet.

  • ArcadeEs wird der Ausdruckstyp "ArcGIS Arcade" verwendet.

  • SQLEs wird der SQL-Ausdruckstyp verwendet.

  • VBScript (Veraltet)Es wird der Ausdruckstyp "VBScript" verwendet.

String

Code-Block

(Optional)

Ein Block mit Code, der für komplexe Python- oder VBScript-Ausdrücke verwendet wird.

String

Feldtyp

(Optional)

Gibt den Feldtyp des neuen Feldes an. Dieser Parameter wird nur verwendet, wenn der Feldname nicht in der Eingabetabelle vorhanden ist.

Wenn es sich bei dem Feld um ein Textfeld handelt, umfasst es 512 Zeichen, es sei denn, die Eingabe ist ein Shapefile oder eine dBASE-Datei. In diesem Fall beträgt die Länge 254 Zeichen. Sie können die Länge mit dem Werkzeug Feld ändern anpassen.

  • Short (16-Bit-Integer)Der Feldtyp ist "Short". Felder des Typs "Short" unterstützen ganze Zahlen zwischen -32.768 und 32.767.

  • Long (32-Bit-Integer)Der Feldtyp ist "Long". Felder des Typs "Long" unterstützen ganze Zahlen zwischen -2.147.483.648 und 2.147.483.647.

  • Big Integer (64-Bit-Ganzzahl)Der Feldtyp ist "Big Integer". Felder des Typs "Big Integer" unterstützen ganze Zahlen zwischen -(253) und 253.

  • Float (32-Bit-Float)Der Feldtyp ist "Float". Felder des Typs "Float" unterstützen Bruchzahlen zwischen -3,4E38 und 1,2E38.

  • Double (64-Bit-Float)Der Feldtyp ist "Double". Felder des Typs "Double" unterstützen Bruchzahlen zwischen -2,2E308 und 1,8E308.

  • TextDer Feldtyp ist "Text". Felder des Typs "Text" unterstützen eine Zeichenfolge.

  • DatumDer Feldtyp ist "Date". Datumsfelder unterstützen Datums- und Uhrzeitwerte.

  • Datum (hohe Genauigkeit)Der Feldtyp ist ein Datum mit hoher Genauigkeit. Datumsfelder mit hoher Genauigkeit unterstützen Datums- und Zeitwerte mit Millisekundenzeit.

  • Nur DatumDer Feldtyp ist "Nur Datum". Felder des Typs "Nur Datum" unterstützen Datumswerte ohne Uhrzeitwerte.

  • Nur ZeitDer Feldtyp ist "Nur Zeit". Felder des Typs "Nur Zeit" unterstützen Uhrzeitwerte ohne Datumswert.

  • ZeitstempelversatzDer Feldtyp ist "Zeitstempelversatz". Felder des Typs "Zeitstempelversatz" unterstützen ein Datum, eine Uhrzeit und einen Versatz vom UTC-Wert.

  • BLOB (Binärdaten)Der Feldtyp ist "BLOB". BLOB-Felder unterstützen Daten, die als lange Abfolge von binären Zahlen gespeichert sind. Sie benötigen ein spezielles Programm zum Laden und Anschauen oder eine Anwendung eines Drittanbieters, um Objekte in ein BLOB-Feld zu laden bzw. den Inhalt in einem BLOB-Feld anzuzeigen.

  • GUID (Globally Unique Identifier)Der Feldtyp ist "GUID". In GUID-Feldern werden Zeichenfolgen aus 36 Zeichen gespeichert (ähnlich denen in der Registrierung), die in geschweifte Klammern eingeschlossen sind.

  • RasterDer Feldtyp ist "Raster". In Raster-Feldern können Raster-Daten innerhalb oder zusammen mit der Geodatabase gespeichert werden. Es können zwar alle von der ArcGIS-Software unterstützten Raster-Dataset-Formate gespeichert werden, es wird jedoch empfohlen, nur kleine Bilder zu verwenden.

String

Domänen erzwingen

(Optional)

Gibt an, ob Felddomänenregeln erzwungen werden.

  • AktiviertFelddomänenregeln werden erzwungen.

  • DeaktiviertFelddomänenregeln werden nicht erzwungen. Dies ist die Standardeinstellung.

Boolean

Abgeleitete Ausgabe

Beschriftung Erläuterung Datentyp

Aktualisierte Eingabetabelle

Die aktualisierte Tabelle.

Table View; Raster Layer; Mosaic Layer

Umgebungen

Aktueller Workspace, Ausdehnung, Felddomänen-Beschreibungen übertragen

Sonderfälle

Felddomänen-Beschreibungen übertragen

When this environment is turned on, any fields that have an associated domain will use the domain description instead of the field's value. Values from fields that do not have a domain will be unaffected.

Lizenzierungsinformationen

  • Basic: Ja
  • Standard: Ja
  • Advanced: Ja