Definitionsabfrage aus Auswahl generieren (Data Management)

Zusammenfassung

Erstellt eine Definitionsabfrage (im SQL-Format) aus den ausgewählten Features oder Zeilen des Layers oder der Tabelle.

Verwendung

  • Eine aktive Auswahl für die Eingabe ist erforderlich.

  • Der Eingabe-Layer oder die Tabellensicht muss in der Karte oder Szene vorhanden sein.

  • Für eine Definitionsabfrageklausel gilt eine Obergrenze von 1.000 Werten. Wenn die Auswahl mehr als 1.000 Werte umfasst, enthält die resultierende Definitionsabfrage mehrere Klauseln.

  • Wenn ein Layer ein GlobalID-Feld aufweist und der Parameter Erstellungsmethode auf Auswahl abgleichen festgelegt ist, wird das GlobalID-Feld anstelle des ObjectID-Feldes verwendet. Das GlobalID-Feld wird in dem Parameter nicht aufgeführt, wenn der Parameter Erstellungsmethode auf Feldwerte verwenden festgelegt ist.

  • Der Parameter Aktive Abfrage anhängen ist nur verfügbar, wenn der Parameter Erstellungsmethode auf Feldwerte verwenden festgelegt ist und der Eingabe-Layer oder die Eingabe-Tabelle eine aktive Definitionsabfrage aufweist. Sie können die aktive Abfrage ermitteln, indem Sie die Layer- oder Tabelleneigenschaften untersuchen.

  • Wenn der Parameter Where-Klausel überschreiben aktiviert ist, der Parameterwert Where-Klausel jedoch nicht geändert oder angegeben wurde, verwendet das Werkzeug die standardmäßig generierte Definitionsabfrage.

Parameter

BeschriftungErläuterungDatentyp
Eingabetabelle

Der Layer oder die Tabellensicht, aus der die Definitionsabfrage generiert wird.

Table View
Erstellungsmethode
(optional)

Gibt die Methode an, mit der die Definitionsabfrage generiert wird.

  • Auswahl abgleichenDas ObjectID-Feld der Eingabetabelle (oder das GlobalID-Feld, falls vorhanden) wird zum Generieren der Abfrage mit in der Auswahl vorhandenen Werten verwendet. Dies ist die Standardeinstellung.
  • Feldwerte verwendenDer Wert des Parameters Feld wird verwendet, um die Abfrage mit in der Auswahl vorhandenen Werten zu generieren.
String
Feld
(optional)

Das Feld in der Tabelle oder der Tabellensicht, das verwendet wird, um Werte für die Abfrage zu generieren. Dieser Parameter ist erforderlich, wenn der Parameter Erstellungsmethode auf Feldwerte verwenden festgelegt wurde.

Field
Abfragename
(optional)

Der eindeutige Name der generierten Abfrage.

String
Where-Klausel umkehren
(optional)

Gibt an, ob die generierte Definitionsabfrage (Where-Klausel) umgekehrt wird und alle nicht ausgewählten Werte oder alle ausgewählten Werte der Eingabetabelle eingeschlossen werden.

  • Aktiviert: Die Where-Klausel wird umgekehrt.
  • Deaktiviert: Die Where-Klausel wird nicht umgekehrt. Dies ist die Standardeinstellung.

Boolean
Aktive Abfrage anhängen
(optional)

Gibt an, ob die generierte Definitionsabfrage an die aktive Abfrage angehängt wird. Dieser Parameter ist verfügbar, wenn der Layer oder die Tabelle eine aktive Definitionsabfrage aufweist und der Parameter Erstellungsmethode auf Feldwerte verwenden festgelegt wurde.

  • Aktiviert: Die generierte Definitionsabfrage wird an die aktive Abfrage angehängt.
  • Deaktiviert: Die generierte Definitionsabfrage wird nicht an die aktive Abfrage angehängt. Dies ist die Standardeinstellung.

Boolean
Where-Klausel überschreiben
(optional)

Gibt an, ob die Definitionsabfrage (Where-Klausel) angezeigt wird und mit dem Parameter Where-Klausel geändert werden kann, bevor sie generiert wird.

  • Aktiviert: Die Where-Klausel wird angezeigt und kann geändert werden, bevor sie generiert wird.
  • Deaktiviert: Die Where-Klausel kann nicht geändert werden. Dies ist die Standardeinstellung.

Boolean
Where-Klausel
(optional)

Der generierte SQL-Definitionsabfrageausdruck aus den anderen Parameterwerten. Weitere Informationen zur SQL-Syntax finden Sie unter SQL-Referenz für in ArcGIS verwendete Abfrageausdrücke.

SQL Expression

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Aktualisierte Tabelle

Die aktualisierte Eingabe mit der generierten Definitionsabfrage.

Feature Layer, Table View

arcpy.management.GenerateDefinitionQueryFromSelection(in_table, {method}, {field}, {query_name}, {invert_where_clause}, {append_active_query}, {overwrite_where_clause}, {where_clause})
NameErläuterungDatentyp
in_table

Der Layer oder die Tabellensicht, aus der die Definitionsabfrage generiert wird.

Table View
method
(optional)

Gibt die Methode an, mit der die Definitionsabfrage generiert wird.

  • MATCH_SELECTIONDas ObjectID-Feld der Eingabetabelle (oder das GlobalID-Feld, falls vorhanden) wird zum Generieren der Abfrage mit in der Auswahl vorhandenen Werten verwendet. Dies ist die Standardeinstellung.
  • USE_FIELD_VALUESDer Wert des Parameters field wird verwendet, um die Abfrage mit in der Auswahl vorhandenen Werten zu generieren.
String
field
(optional)

Das Feld in der Tabelle oder der Tabellensicht, das verwendet wird, um Werte für die Abfrage zu generieren. Dieser Parameter ist erforderlich, wenn der Parameter method auf USE_FIELD_VALUES festgelegt ist.

Field
query_name
(optional)

Der eindeutige Name der generierten Abfrage.

String
invert_where_clause
(optional)

Gibt an, ob die generierte Definitionsabfrage (Where-Klausel) umgekehrt wird und alle nicht ausgewählten Werte oder alle ausgewählten Werte der Eingabetabelle eingeschlossen werden.

  • INVERTDie Where-Klausel wird umgekehrt.
  • NON_INVERTDie Where-Klausel wird nicht umgekehrt. Dies ist die Standardeinstellung.
Boolean
append_active_query
(optional)

Gibt an, ob die generierte Definitionsabfrage an die aktive Abfrage angehängt wird. Dieser Parameter ist verfügbar, wenn ein Layer oder eine Tabelle eine aktive Definitionsabfrage aufweist und der Parameter method auf USE_FIELD_VALUES festgelegt wurde.

  • APPENDDie generierte Definitionsabfrage wird an die aktive Abfrage angehängt.
  • NOT_APPENDDie generierte Definitionsabfrage wird nicht an die aktive Abfrage angehängt. Dies ist die Standardeinstellung.
Boolean
overwrite_where_clause
(optional)

Gibt an, ob die Definitionsabfrage (Where-Klausel) angezeigt wird und mit dem Parameter where_clause geändert werden kann, bevor sie generiert wird.

  • OVERWRITEDie Where-Klausel kann geändert werden, bevor sie generiert wird.
  • NOT_OVERWRITEDie Where-Klausel kann nicht geändert werden. Dies ist die Standardeinstellung.
Boolean
where_clause
(optional)

Die Definitionsabfrage, die die anderen Parameterwerte außer Kraft setzt. Weitere Informationen zur SQL-Syntax finden Sie unter SQL-Referenz für in ArcGIS verwendete Abfrageausdrücke.

SQL Expression

Abgeleitete Ausgabe

NameErläuterungDatentyp
out_table

Die aktualisierte Eingabe mit der generierten Definitionsabfrage.

Feature Layer, Table View

Codebeispiel

GenerateDefinitionQueryFromSelection: Beispiel (Python-Fenster)

Das folgende Skript für das Python-Fenster veranschaulicht, wie die Funktion GenerateDefinitionQueryFromSelection im unmittelbaren Modus verwendet wird.

import arcpy
arcpy.env.workspace = "C:/data"

# Set local variables
in_table = "WisconsinAirports.lyrx"
where_clause = '"TRAFFICCOUNT" >= \'100\''

# Run the tool
arcpy.management.GenerateDefinitionQueryFromSelection(
    in_table,
    "MATCH_SELECTION",
    "MyPythonQueryName",
    "NON_INVERT",
    "NOT_APPEND",
    "OVERWRITE",
    where_clause)

Umgebungen

Dieses Werkzeug verwendet keine Geoverarbeitungsumgebungen.

Lizenzinformationen

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

Verwandte Themen