Bedingungen und Operatoren

Bedingungen und Operatoren

Tabellen

Die Tabellenliste einer Unterabfrage enthält alle Bezeichner von Tabellen oder Ansichten, die in der Abfrage verwendete werden. Dies sind die Namen von Tabellen/Ansichten in der Datenbank, auf die in der Von-Anweisung verwiesen wird. Der Zweck dieser Liste besteht darin, vor der Ausführung der SQL-Anweisung alle erforderlichen Schema-Ergänzungen für diese Namen vorzunehmen. Da die Von-Anweisung beliebige SQL-Syntax enthalten kann (einschließlich datenbankspezifischer Syntax), wird GeoDin diesen String nicht auswerten, um festzustellen, welche Tabellennamen mit einem Schemanamen erweitert werden sollen. Stattdessen teilt die hier definierte Tabellenliste GeoDin mit, welche Namen in der Von-Anweisung und in den anderen Teilen der Abfragekonfiguration einzuschließen sind. Alle hier angegebenen Namen werden automatisch mit dem Schemanamen aus der GeoDin-Datenbankkonfiguration erweitert.

Beispiel:

Alle GeoDin-Tabellen werden vom dbo-Benutzer (Datenbankbesitzer) der Datenbank erstellt. Daher können alle Tabellen von anderen Benutzern nur dann aufgerufen werden, wenn das Schema aufgeführt ist und der vollständige Tabellenname verwendet wird:

dbo.GeoDin_LOC_LOCREG

Um nicht für jede Tabelle den Schemaersatz angeben zu müssen, ist es möglich, das Schema der GeoDin-Tabellen in der Konfiguration der Datenbankverbindung zu speichern Konfiguration für Benutzer-Datenbanken.

Hinweis: Aliasnamen, die in der Von-Anweisung angegeben werden (zum Beispiel für Unterabfragen), Mai nicht hier enthalten sein. Andernfalls wird die Schemaerweiterung dem Alias hinzugefügt und die Anweisung schlägt fehl.

Konfiguration

In der Konfiguration werden die allgemeinen Einstellungen für die Abfrage vorgenommen, basierend auf der für die Abfrage verwendete Datengrundlage.

Die Konfiguration umfasst:

  1. die Von-Anweisung bei der Verknüpfung (FROM) Knoten für den SQL-Befehl

  2. und andere Kriterien Einschränkungsfelder für die Automatisch Beschränkung (WHERE) von der Abfrage, abhängig von der Position der Abfrage im GeoDin Objektmanager

  3. Definition von der Pflichtfeld-Information für die Verarbeitung des Ergebnis der Abfrage Ergebnisfelder

Bei der Eingabe Sub-Abfragen Es ist möglich, die Abfrage anzuzeigen, indem man auf "SQL Voransicht" bei der gewünschten Teilabfragen klickt.

Hinweis: Die in der Voransicht angezeigte SQL-Anweisung kann nach Ersetzen der Projekt-Kennung ($PRJID), der Standort-Kennung ($LOCID) oder der INVID ($INVID) direkt in der Datenbank getestet werden

Zusätzliche Optionen:

  1. *-*DISTINCT durch Abfrageausführung im GeoDin Objekt-Manager-

Definieren Sie, ob ein SQL-Befehl mit Auswählen DISTINCT ... in der Abfrage ausgeführt werden soll oder nur ein Auswählen-Befehl. In beiden Fällen zeigt GeoDin ein Objekt, das in einer Abfrage mehr als einmal nur einmal im Objektmanager verfügbar ist. Dies geschieht durch eine Prüfung der Objekt-ID's. Ein Allgemein DISTINCT wird nicht standardmäßig verwendet, weil die Verwendung dieses Befehls vom Abfrage-Design abhängt. Wenn Sie sicher sind, dass Ihr SQL-Befehl ein distinct zulässt, kann diese Option die Abfrage erheblich beschleunigen.

  1. -Ausführungsfehler ignorieren-

Wenn die Abfrage standardmäßig zu einem Fehler führt, wird eine Fehlermitteilung angezeigt. Sie können die Fehlermitteilung mit dieser Option nicht darstellen. Wenn das Ausführen der Abfrage auf diese Weise zu einem Fehler führt, wird der Fehler ignoriert und die Abfrage wird nicht in den Objekt-Manager eingefügt. Sie können diese Option benutzen, wenn Sie eine Abfrage erstellen möchten, die in keiner Art von Datenbank verwendet werden kann, und Sie diesen Fehler ignorieren möchten. Empfohlen ist, dass Sie statt dieser Option die Konfiguration von der Voraussetzungen werden für eine Abfrage verwendete, weil es Immer schneller ist, die Voraussetzungen zu kontrollieren, als in einer Abfrage auf einen Fehler zu stoßen.

  1. -Benutzen Sie DISTINCT für den Form-Exportieren-

Wenn die Abfrage verwendet wird, um eine Shape-Datei zu erstellen, können Sie hier auswählen, ob für den Shape-Export eine SELECT DISTINCT- oder eine „einfache“ SELECT-Befehl verwendet werden soll.

Bedingung

Dieser Sektion der Definition von Systemabfragen kann optional verwendet werden, um die Ergebnisse der Abfrage zu begrenzen. Dieser Sektion ist vergleichbar mit der WHERE-Anweisung einer SQL-Abfrage und wird automatisch zur Datenbankabfrage hinzugefügt. Fügen Sie in der Liste einen oder mehrere Einträge zum Bearbeiten hinzu.

ODER

¯¯¯

Dieser Sektion von Systemabfragen kann verwendet werden, um die Ergebnisse der Abfrage einzugrenzen. Sie entspricht der WHERE-Bedingung einer SQL-Abfrage und wird automatisch zur Datenbankabfrage hinzugefügt. Mögliche logische Operatoren sind UND- und ODER-Verknüpfungen, die auf zwei Ebenen angeordnet werden können. Auf der ersten Ebene werden verbundene Unterabfragen mit einem ODER verknüpft. Die erste Bedingung erscheint mit dem Schlüsselwort WENN und markiert den Beginn der Bedingungen.

Im erster Schritt wird daher definiert:

<<Bedingung 1>> ODER <<Bedingung 2>> ODER <<Bedingung 3>> ...

Auf der zweiten Ebene sind die Einzelbedingungen die "Wahr"-Kriterien der Abfrage, wobei UND-Operatoren verwendet werden können.

Beispiele für Bedingungen

Beispiel unter Verwendung der Koordinaten eines Messpunkte (ODER-Operator):

Die Abfrage soll alle Messpunkte finden, bei denen entweder die X-Koordinate (XCOORD) höher als 100 ist oder die Y-Koordinate höher als 50 ist. Die Bedingungen wären:

Wenn

XCOORD > 100

ODER

YCOORD > 50

Das Beispiel kann erweitert werden, um die Suche nach Objekten mit ihren Koordinaten (ODER- und UND-Bezug) zu demonstrieren. Die Abfrage findet alle Messpunkte mit X-Koordinaten über 100 und unter 200 oder mit Y-Koordinaten über 50 und unter 100:

Wenn

XCOORD > 100

XCOORD < 200

ODER

XCOORD > 50

YCOORD < 100

Wenn die Bedingungen für sowohl die X-Koordinaten als auch die Y-Koordinaten erfüllt sein müssen, werden die Bedingungen in der zweiten Ebene (UND) der Abfrage eingegeben:

Wenn

XCOORD > 100

XCOORD < 200

YCOORD > 50

YCOORD < 100

UND

Bei der Ebene von Bedingungen müssen verschiedene Suche nach Bedingungen definiert werden. Hier werden die Bedingungen entweder als Einzelbedingungen oder als eine Kombination mit logischem UND definiert. Es ist möglich, Gruppen von Bedingungen miteinander durch ein logisches ODER.

Konfigurieren der Bedingungen

Im Feld DATENFELDNAME muss der Feldname des Datenfelds definiert werden, der für die Abfrage verwendet werden soll.

Der Feldname wird im Papierformat <table_name>.<field_name> angegeben.

Im Feld "Bedingung" kann die gewünschte Bedingung entweder direkt definiert werden, oder es kann eine parametrisierte Bedingung verwendete werden. Wenn sie direkt definiert wird, wird die Bedingung als logischer Ausdruck mit einem relationalen Operator und einem Wert ausgedrückt.

Mögliche relationale Operatoren:

> größer als

=> größer als oder gleich

< kleiner als

<= kleiner als oder gleich

= gleich

<> nicht gleich

ist null Datenfeld ist Leer

ist nicht null Datenfeld ist nicht Leer

wie 'A%' Inhalt(e) in hoch Kommas unter Verwendung von Platzhaltern in der Zeichenkette: _ ein Zeichen oder % mehrere Zeichen

in ('T1','T2') Liste von Werte in Runden Klammern, Werte durch Kommas getrennt, Textfelder haben Werte in hoch Kommas,

numerisches Datenfeld hat Werte mit Dezimalpunkt (nicht ein Komma) und nicht in hoch Kommas

Bedingungen dass Abfrage a datum : Bitte überprüfen Sie Ihre Datenbank auf die korrekte Formatierung:

Die folgenden Norm-Formatierungen sind verfügbar:

Zugriff #MM/DD/YYYY#

Oracle 'TT-MM-JJJJ'

MySQL, MS SQL, PostgreSQL 'TT.MM.JJJJ'

Bedingungen dass Abfrage a Datum/Uhrzeit(Datum/Uhrzeit): bitte Benutzen Sie die folgenden Norm Formatierungen:

Zugriff: #MM/DD/YYYY HH:MM:SS#

Oracle: zu_Datum('31.05.2015 12:24:36','dd.mm.yyyy hh24:mi:ss')

MySQL, MS SQL, PostgreSQL: 'DD.MM.YYYY HH:MM:SS'

Wenn eine Parametrisierte Abfragen verwendet wird, wird ein Fenster geöffnet, wenn die Abfrage zum ersten Mal ausgeführt wird. Alle Bedingungen, die als parametriert markiert sind, können in diesem Fenster eingegeben und geändert werden.

Hinweis: Die Benutzung einer parametrierten Bedingung wird durch die Zeichen ":?" angezeigt. Optional kann vor dieser Zeichenkette ein Vergleichsoperator angegeben werden. In diesem Fall wird dieser Operator vorgefüllt, wenn die Parameter abgefragt werden.

Wenn eine Parametrisierte Abfragen verwendet wird, werden die unterschiedlichen notwendigen allgemeine Einstellungen verfügbar.

Der Parameter kann als Pflichtfeld markiert werden - wenn er nicht Pflichtfeld ist, wird der Parameter ignoriert, wenn er Leer ist.

Es ist auch möglich, einen Standardwert einzugeben und einen Darstellungsbereich zu verwenden.

Die Option -Benutzen Sie Intervall- erzeugt eine spezielle Art von Bedingung. Wenn Sie Objekte selektieren in einem definierten Bereich um eine selektierte Koordinate, ist die folgende Bedingung möglich:

  1. Datenfeldname: GeoDin_LOC_LOCREG.XCOORD

  2. Bedingung: >=:?

  3. x Intervall verwenden

  4. 100

Wenn die Abfrage ausgeführt wird, wird ein Eingabefenster angezeigt, das die selektierte X-Koordinate (Easting) und den Abstand (Standard 100) zeigt, der eingegeben werden soll. Die folgende WHERE-Bedingung wird automatisch zur SQL-Anweisung hinzugefügt:

... (GeoDin_LOC_LOCREG.XCOORD >= Coordinate-100) und (GeoDin_LOC_LOCREG.XCOORD <= C*oordinate+*100)

Wenn Sie eine zweite Bedingung für das Datenfeld GeoDin_LOC_LOCREG.YCOORD (Northing) auswählen, können Objekte aus einem gegebenen Rechteck um den selektierten Standort durch Eingabe von 3 Zahlen statt durch Eingabe der Ecken des Rechtecks selektiert werden.

Benutzen Sie den Parameter $%SYSDATE$

Sie können $%SYSDATE$ als Platzhalter für den Datumsparameter verwenden, um das aktuelle Datum als Standardwert auszuwählen. Auch mathematische Terme mit dem Makro $%SYSDATE$ sind möglich, z. B. $%SYSDATE$-7, um denselben Tag vor einer Woche auszuwählen.

Anzeigefelder

Die Anzeigefelder definieren, welche Datenbankfelder eines Objekts im GeoDin Objektmanager (GOM) angezeigt werden sollen.

Die Objekte und die Inhalte, die angezeigt werden, sind tatsächlich die Ergebnisse einer Abfrage – normalerweise ist dies der Name von einem Objekt oder "LONGNAME".

Es ist jedoch möglich, Felder für eine detailliertere Anzeige zu kombinieren, wie z. B. Name und Art von Bohrloch.

Sie können organisieren, welche und wie viele Felder angezeigt zu werden Anzeigefeld.

Es gibt optionale Formatierungsanweisungen, um den Text anzuzeigen.

Im Eingabefeld können Sie das Makro definieren, das auf die Ergebnisse der SQL-Abfrage angewendet wird.

Wenn kein Makro definiert ist, werden die Datensätze so angezeigt, wie sie in der Datenbank existieren.

Dies bedeutet beispielsweise, dass Codes nicht Zurück zu Vollfarbe Text zurückübersetzt werden, sondern als Codes angezeigt werden.

Das Makro kann nur Bezüge zu definierten Anzeigefeldern enthalten. Daher ersetzt das Makro Anzeigefelder nicht, sondern ergänzt und formatiert sie.

Auswählen DISTINCT GeoDin_LOC_LOCREG.LOCID, GeoDin_LOC_ZMGENINF.SHORTNAME, GeoDin_LOC_ ZMGENINF.PURPOSE ....

Die Textmakros werden genau auf dieselbe Weise implementiert wie in einer Vorlage, daher der Bereich von Formatierungsoptionen, Verfügbar.

Beispiel:

$GeoDin_LOC_ ZMGENINF. KURZNAME $ ($GeoDin_LOC_ZMGENINF.ZWECK $)

Wenn eine Beschriftungsanweisung verwendet wird, muss zusätzlich ein Makro definiert werden, das verwendet wird, wenn das Makro im GOM aktualisiert wird. Dies geschieht immer dann, wenn Allgemeine Sondierungen bearbeitet und gespeichert werden. Bei diesem Zeitpunkt wird das geladene Objekt verwendet, um das Makro aufzulösen. Die anfängliche Abfrage noch der Datensatz, der die Eingabe im GOM bereitstellt, da dies nicht notwendig ist und nur unnötig Speicher verwenden würde. Das Makro für das Aktualisieren muss wie in einer Vorlage mit Feldverweisen auf das Objekt erstellt werden. In der Regel werden die vorangehenden Tabellennamen weggelassen.

Sortierungsfelder

Hier können zusätzliche Datenfelder als zusätzliche Sortierungskriterien für die Abfrageergebnisse ausgewählt werden (d. h. unabhängig von den angezeigten Feldern). Ein Sortierungsfeld ist definiert, indem <tablename>.<columnname> verwendet wird. Ein ORDER BY-Befehl wird automatisch der SQL-Anweisung hinzugefügt, wenn die Sortierungsfelder verwendet werden. Zusätzlich können Sie festlegen, ob die Sortierung für die Ausführung im Objektmanager oder in einem Layout verwendet wird.

Ergebnisfelder

Ergebnisfelder werden der Datenfeld-Liste der Auswählen-Anweisung hinzugefügt und definieren die Struktur der Ergebnisdaten. Ein Ergebnisfeld wird durch <tablename>.<columname> definiert.

Teilabfragen

Eine Teilabfragen ist eine unabhängige Abfrage auf der Datenbank (eine SQL-Anweisung), die eine Anzahl von Ergebnissen liefert. Die SQL-Anweisung ist nicht definiert als eine vollständige Anweisung, sondern über eine Anzahl von einzelnen Definitionen. In separaten Eingabefeldern werden bestimmte Fragmente der Abfrage definiert, die von GeoDin zu einer vollständigen SQL-Anweisung kombiniert werden. Der Grund dafür ist eine Anzahl von variablen Teilen der SQL-Anweisung, zum Beispiel die Feldliste in SELECT, die in GeoDin gemäß der vorgesehenen Verwendung erstellt wird. So ist es nur möglich, eine optimierte (zweckorientierte) Abfrage in der Datenbank zu erreichen, die sich stark unterscheidet, zum Beispiel beim Ausführen der Abfrage im GeoDin Objektmanager vom Ausführen derselben Abfrage zur Datenabruf in einem layout.

Name

Hier kann ein Name für die Teilabfragen eingegeben werden.

Vorlagenbeschreibung

Geben Sie hier eine kurze Bezeichnung der Abfrage ein. Die Bezeichnung wird im Abfrageassistenten angezeigt, wenn die Abfrage als Vorlage für Benutzerabfragen definiert ist (siehe Systemabfrage)

Bedingungen verknüpfen mit ODER/UND

Diese Option steuert die Kombination von Einzelbedingungen der Abfrage. Je nach Abfrage mit mehreren Bedingungen kann die "ODER" Verbindung im Hauptknoten

(Bedingung 1 und Bedingung 2) oder (Bedingung 1 und Bedingung 3)

kann besser durch eine "UND" Verbindung im Hauptknoten

(Bedingung 1) und (Bedingung 2 oder Bedingung 3).

SQL-Voransicht

Hier wird der SQL-Befehl basierend auf der aktuellen Konfiguration der Abfrage angezeigt.

Abfragetyp von einer Objektrahmenabfrage

Beim Bearbeiten eines Objektrahmenabfrage Sie können zwischen der Definition einer Strukturierten Vorlage oder einer gesamten SQL-Anweisung wählen. Eine SQL-Anweisung ermöglicht alle Möglichkeiten der Datenauswahl (z. B. Auswählen Zählung(Datafield) AS GCCOUNT Von Tabelle), ist aber wahrscheinlich nicht in allen Datenbank-Typen ausführbar. Im Allgemeinen ist eine Strukturierte Vorlage vorzuziehen.

Verknüpfung (FROM)

Die Verknüpfung ist die Von-Klausel einer SQL-Anweisung. Die Informationen können von einer Tabelle oder von einem Satz von Tabellen gesammelt werden, wie in der Von-Bedingung definiert. Wenn nur eine Tabelle selektiert ist, muss hier nur der Tabellenname eingegeben werden. Für komplexere Ausdrücke muss die Syntax der Von-Klausel den SQL-Spezifikationen des verwendete Datenbanksystems folgen.

Die Definition oder Struktur der Von-Klausel kann zwischen verschiedenen Datenbanksystemen fällig den Spezifikationen der spezifischen SQL-Syntax variieren.

Hinweis: Es kann hilfreich sein, die Abfrage zuerst in einem Datenbankprogramm mithilfe eines grafischen Abfrageeditors zu Erstellen. Dann kann die Von-Klausel der Anweisung hierher kopiert werden (Beispiel: der Abfrageeditor in MS Access)

Einschränkungsfelder

Die Einschränkungsfelder werden verwendet, um Datenfelder zu definieren, die GeoDin je nach Position der Abfrage im Objektmanager automatisch zur WHERE-Bedingung der Abfrage hinzufügt, um die Ergebnismenge entsprechend der Struktur des Objektmanagers einzuschränken.

Die Basis sind die Anzeigebedingungen von der Abfrage.

Datenbank, Datenbankabfragen

Die Abfragen sind nicht weiter eingeschränkt. Die Einschränkungsfelder können Leer bleiben.

Projekt, Projektabfragen

Die Abfragen werden mit dem Projekt Kennung eingeschränkt. Das einschränkende Feld PRJ_ID muss ausgefüllt werden.

Objekt

Die Abfrage wird durch die Verwendung der Objekt-ID und der Kennung eingeschränkt. Die Einschränkungsfelder PRJ_ID und LOCID müssen ausgefüllt werden.

Messpunkte

Die Abfrage ist durch die Verwendung der Messpunkte-Kennung eingeschränkt. Das einschränkende Feld INVID muss gefüllt werden.

Die Spalten müssen im Papierformat <tablename>.<columnname> ausgewählt werden und müssen Teil des Ergebnisses der Abfrage sein.

Anzeigefeld

Die Anzeigefelder definieren, welche Datenbank-Felder für die Benennung der Abfrageergebnisse im GeoDin-Objektmanager verwendet werden. Auf diese Weise kann der Name aus mehreren Feldern zusammengesetzt werden. Ein häufig verwendetes Datenbank-Feld ist der Objektname LONGNAME. Sie können aber auch kombinierte Namen wie Name und Tiefe verwenden.

Datenbank

DemoDB

GeoDin Demo

Objekte

Messpunkte

Projekt

Bohrloch 1

Bohrloch 2

Projekt 2

Projekt 3

Objekte

Messpunkte

Datenbank

Datenfeldname

In diesem Feld wird das anzuzeigende Datenfeld im Formular <Tabellenname>.<Spalte> definiert.

Erweiterungstext

Die hier eingegebenen Zeichen werden an den Inhalt des Datenfelds als „Erweiterungstext“ angehängt. So kann beispielsweise der Inhalt eines Anzeigefelds wie GeoDin_LOC_LOCREG.ZCOORDE (Endtiefe) mit der Maßeinheit ergänzt werden, z. B.: „ m“ oder mit längeren Varianten wie „in m unter Ansatzhöhe“.

Sortieren-Kriterien

Wählen Sie die Sortierreihenfolge für dieses Datenfeld aus. Eine ORDER-BY-Anweisung wird automatisch zur SQL-Anweisung hinzugefügt.

Portaleigenschaften

Dieses Hilfekapitel ist in der aktuellen Sprache nicht verfügbar. Sie können die GeoDin Hilfe-Dateien mit der <Online-Update>-Funktion aktualisieren. Dafür ist eine Internetverbindung erforderlich.

Website-Eigenschaften

Dieses Hilfekapitel ist in der aktuellen Sprache nicht verfügbar. Sie können die GeoDin Hilfe-Dateien mit der <Online-Update>-Funktion aktualisieren. Dafür ist eine Internetverbindung erforderlich.

Website-Eigenschaften

Hier kann die Auflösung und das Aktualisierungsintervall sowie eine Hintergrundfarbe für die Website festgelegt werden.

Außerdem kann eine HTML-Vorlage für die Website ausgewählt werden.

Layout im Cache vorhalten:

Bei setzen des Hakens wird das Layout wählen für eine bestimmte Zeit im Cache vorgehalten. Je nach Layout wählen kann dies die Antwortzeit des Servers deutlich verkürzen.

Cache-Einstellungen

Dieses Hilfekapitel ist in der aktuellen Sprache nicht verfügbar. Sie können die GeoDin Hilfe-Dateien mit der <Online-Update>-Funktion aktualisieren. Dafür ist eine Internetverbindung erforderlich.

Cache-Einstellungen

Hier kann die Anzahl der Minuten eingestellt werden, für die das Layout im Cache vorgehalten werden soll.

Werden für Layout wählen-Layouts z. B. die Daten alle fünf Minuten aktualisiert, ist es sinnvoll, das Layout ebenfalls fünf Minuten im Cache zu lassen.

Nach dieser Zeit wird es automatisch entfernt und beim erneuten Abruf mit neuen Daten verbunden.

Zuletzt aktualisiert

War das hilfreich?