Erstellen einer Auswahl mit SQL

Bisher wurden verschiedene Methoden zur Auswahl von Netzobjekten behandelt. Sie können auch SQL-Abfragen verwenden, um Listen von Objekten zu erstellen, die bestimmte Bedingungen erfüllen. Die Bedingungen können einfach oder komplex sein. Sie können beispielsweise eine Liste von Knoten eines bestimmten Typs oder von Verbindungen erstellen, für die bestimmte Felder innerhalb festgelegter Bereiche liegen.

Mit den folgenden Schritten erstellen Sie eine Reihe von Auswahllisten mithilfe von SQL. Sie können das bereitgestellte Netz Newtown Network verwenden.

  1. Erstellen Sie eine Liste aller Reservoire:
    • Klicken Sie auf das Werkzeug SQL select. Das Dialogfeld SQL wird angezeigt.

      Bild anzeigen

      SQL dialog

    • Wählen Sie im Feld Objekttyp die Option Reservoir aus. Bei einer einfachen Abfrage können nur Objekte eines Typs ausgewählt werden. Sie können jedoch Listen kombinieren, falls Sie mehrere Typen benötigen. Komplexere Abfragen können auch zur Auswahl von Objekten mit mehreren Typen verwendet werden.
    • Wählen Sie in der Dropdown-Liste Feld die Option node_id aus.
    • Klicken Sie auf die Schaltfläche Builder. Das Dialogfeld wird erweitert und zeigt die Operationen an, die beim Erstellen der SQL-Abfrage verwendet werden können.

      Bild anzeigen

      SQL dialog expanded

    • Klicken Sie auf die Schaltfläche >.
    • Klicken Sie auf das Feld Konstante, geben Sie 0 (Null) ein, und klicken Sie auf die kleine Schaltfläche OK unmittelbar darunter. Die Abfrage ist jetzt abgeschlossen. Wenn Ihnen ein Fehler unterläuft, klicken Sie auf das große Textfeld auf der linken Seite, das die Abfrage enthält, und bearbeiten Sie sie. Sie können jeden Ausdruck direkt in das Textfeld eingeben. Sie müssen nicht die Builder-Optionen verwenden, wenn Sie mit dem für SQL-Ausdrücke erforderlichen Format vertraut sind.

      Bild anzeigen

      Example of SQL query (WS)

    • Klicken Sie auf die Schaltfläche Speichern unter. Öffnen Sie die Modellgruppen Lernprogramm und Newtown. Klicken Sie auf die Gruppe Gespeicherte Abfrage, und geben Sie Select Reservoirs ein. Klicken Sie auf Speichern, um die Abfrage zur Gruppe hinzuzufügen. Das Dialogfeld Speichern unter wird geschlossen.
    • Klicken Sie im Dialogfeld SQL auf Ausführen. Das Dialogfeld wird geschlossen, und alle Objekte, die der Abfragebedingung entsprechen, werden ausgewählt (d. h. die Reservoire mit einer Knoten-ID). Klicken Sie bei Bedarf mit der rechten Maustaste auf einen leeren Bereich im GeoPlan, und wählen Sie Auswahl suchen aus, um die Anzeige zu maximieren.

      Bild anzeigen

      Objects selected in the GeoPlan following SQL query

    • Klicken Sie mit der rechten Maustaste auf die Gruppe Auswahlliste, und wählen Sie Neu | Auswahlliste. Geben Sie der Liste den Namen Reservoirs (SQL), und klicken Sie auf OK. Sie haben nun den SQL-Befehl erstellt, der die Liste generiert. Die Liste der Objekte, die sich aus der Ausführung des SQL-Befehls ergibt, muss extra gespeichert werden. Wenn Sie die Liste nicht speichern, müssen Sie sie neu erstellen, indem Sie den SQL-Befehl jedes Mal erneut ausführen, wenn Sie die Elemente auswählen müssen.
  2. Eine andere Aufgabe kann darin bestehen, alle Knoten über 140 mAD auszuwählen (das Werkzeug Find Network Objects kann in diesem Fall nicht verwendet werden):
    • Löschen Sie die aktuelle Auswahl. Wenn Sie im Dialogfeld SQL eine SQL-Abfrage ausführen, werden alle übereinstimmenden Objekte zur aktuellen Auswahl hinzugefügt. Falls Sie jedoch zum Ausführen einer SQL-Abfrage das zugehörige Symbol auf den GeoPlan ziehen, wird die aktuelle Auswahl durch die neue Auswahl ersetzt.
    • Klicken Sie auf das Werkzeug SQL select.
    • Wählen Sie als Objekttyp die Option Node aus.
    • Wählen Sie z (Elevation) als Feld aus.
    • Geben Sie im Hauptabfragefeld > 140 ein.

      Bild anzeigen

      Example of WS SQL query for elevation

    • Klicken Sie auf Test. Das Dialogfeld zeigt die Anzahl der Objekte an, die die Kriterien erfüllen. Klicken Sie auf OK.

      Bild anzeigen

      SQL warning message

    • Speichern Sie die Abfrage in der Gruppe Gespeicherte Abfrage, und geben Sie ihr den Namen Nodes Above 140 mAD.
    • Klicken Sie auf Ausführen. Die ausgewählten Knoten werden hervorgehoben. Sie können auch eine vorhandene SQL-Abfrage ausführen, ohne das Dialogfeld SQL zu verwenden, indem Sie die Abfrage auf den GeoPlan ziehen.
    • Verwenden Sie Auswahl suchen, um die Anzeige zu maximieren.

      Bild anzeigen

      Objects selected in the GeoPlan

    • Speichern Sie die Auswahl in der Gruppe Auswahlliste als Nodes Above 140 mAD.
    • Öffnen Sie die Tabellenansicht Knoten (weitere Informationen zu Rastern finden Sie im Thema Arbeiten mit Rastern und Eigenschaftenblättern), und sortieren Sie die Datensätze in absteigender Reihenfolge der Höhe. Die ausgewählten Knoten werden oben aufgeführt. Dadurch wird bestätigt, dass die Liste korrekt ist, und es wird eine alternative Methode zum Generieren der Auswahl bereitgestellt. Schließen Sie die Tabellenansicht.
  3. Sie können jedes der Datenfelder in einer Abfrage verwenden. Sie können beispielsweise eine Liste der Rohre erstellen, die breiter als 175 mm sind:
    • Löschen Sie die aktuelle Auswahl.
    • Klicken Sie auf SQL select, legen Sie den Objekttyp auf Pipe fest, und geben Sie die Bedingung diameter > 175 ein.

      Bild anzeigen

      SQL pipe width query

    • Testen Sie die Abfrage. Die Anzahl der ausgewählten Elemente wird angezeigt. Klicken Sie auf OK.
    • Speichern Sie die Abfrage unter dem Namen Pipes > 175 mm.
    • Führen Sie die Abfrage aus, und suchen Sie die Auswahl.

      Bild anzeigen

      Objects selected in the GeoPlan following the running of the SQL query

    • Speichern Sie die Auswahl in der Gruppe Auswahlliste unter dem Namen Pipes > 175 mm.
  4. Mit den Werkzeugen und Rastern von GeoPlan lassen sich die gleichen Ergebnisse wie mit einfachen SQL-Abfragen erzielen. Komplexere SQL-Abfragen können jedoch so konzipiert werden, dass sie Objekte anhand einer Kombination von Kriterien auswählen:
    • Erstellen Sie zunächst eine Kopie der letzten Abfrage. Klicken Sie mit der rechten Maustaste auf die Abfrage Pipes > 175 mm (in der Gruppe Gespeicherte Abfrage), und wählen Sie die Option Kopieren aus. Klicken Sie mit der rechten Maustaste auf die Gruppe Gespeicherte Abfrage, und wählen Sie Einfügen aus. Klicken Sie mit der rechten Maustaste auf die neue Abfrage (Pipes > 175 mm!), und wählen Sie Umbenennen aus. Ändern Sie den Namen in Minor Pipes, und klicken Sie auf OK.
    • Löschen Sie die aktuelle Auswahl.
    • Ziehen Sie die Abfrage Minor Pipes auf den InfoWorks WS Pro-Hintergrund (nicht auf den GeoPlan). Die Abfrage wird neu geladen. Wenn Sie die Abfrage auf den GeoPlan ziehen, wird die Abfrage ausgeführt, aber nicht zur Bearbeitung geladen.

      Bild anzeigen

      Reloaded Query

    • Klicken Sie auf die Schaltfläche Builder.
    • Erweitern Sie die Bedingung, indem Sie entweder die Schaltflächen im Dialogfeld verwenden oder die Bedingung direkt eingeben: diameter < 175 OR length < 1.
    • Bild anzeigen

    • Achten Sie bei der Eingabe von Ausdrücken (direkt oder mithilfe der Builder-Optionen) darauf, dass auf beiden Seiten der Operatoren (Arithmetisch, Text, Vergleich und Logik) ein Leerzeichen steht.
    • Klicken Sie auf Test. Es gibt nun mehr übereinstimmende Objekte, die entweder einen Durchmesser von weniger als 75 mm oder eine Länge von weniger als 1 m haben. Klicken Sie auf OK.
    • Klicken Sie auf Speichern, um die Abfrage erneut zu speichern. Wenn Sie eine neue Version einer Abfrage erstellen möchten, anstatt sie lediglich zu bearbeiten, müssen Sie vor dem Laden der Abfrage eine Kopie erstellen.
    • Führen Sie die Abfrage aus, und speichern Sie die Auswahl in der Gruppe Auswahlliste unter dem Namen Minor Pipes.
  5. Sie können die Ergebnisse einer Abfrage als Raster anzeigen (weitere Informationen zu Rastern finden Sie im Thema Arbeiten mit Rastern und Eigenschaftenblättern):
    • Löschen Sie die aktuelle Auswahl.
    • Ziehen Sie die Abfrage Minor Pipes auf den InfoWorks WS Pro-Hintergrund.
    • Klicken Sie auf die Registerkarte Raster.

      Bild anzeigen

      Grid Tab of the SQL dialog

    • Halten Sie die STRG-Taste gedrückt, und klicken Sie auf die Felder us_node_id, link_suffix, length und diameter. Klicken Sie auf Einschließen.

      Bild anzeigen

      Multi-selection in grid tab

    • Klicken Sie auf Testraster. Die Abfrage wird ausgeführt, und die Tabellenansicht Rohr wird geladen. Schließen Sie das Dialogfeld SQL. Das Raster zeigt nur die entsprechenden Datensätze und die ausgewählten Spalten an. Wenn Sie auf der Registerkarte Raster keine Felder auswählen, werden alle Spalten einbezogen.

      Bild anzeigen

      Objects selected in Grid view

  6. Schließen Sie alle Fenster, auch das GeoPlan-Fenster.

Back Zurück zum Flussdiagramm

Related Topics button

Verwenden von SQL

Auswahllisten

Arbeiten mit Datenbankobjekten

Verbindungsraster

Knotenraster