Antwort aktualisieren (QGIS Version> = 2.14)
Seit QGIS 2.14 können Sie mithilfe von virtuellen Ebenen SQL-Anweisungen für jede geladene Vektorebene ausführen .
- Nachdem Sie die Ebene in QGIS geladen haben, gehen Sie zu Ebene> Ebene hinzufügen> Virtuelle Ebene hinzufügen / bearbeiten .
Geben Sie im Dialogfeld "Virtuelle Ebene erstellen" Ihre SQL-Anweisung in das Feld "Abfrage" ein. Etwas wie:
SELECT DISTINCT Städtename FROM Ebenenname
Für Geometrie legen Sie Keine Geometrie fest
- Klicken Sie auf OK und eine Tabelle mit den gewünschten eindeutigen Werten wird in QGIS geladen.
Hinweis: Diese Tabelle wird aktualisiert, wenn der Spalte city_name neue Werte hinzugefügt werden.
Legacy-Antwort (QGIS Version <2.14)
Sie haben ein paar Möglichkeiten, um das zu tun, was Sie verlangen.
- Importieren Sie Ihr Shapefile in eine Spatialite- oder Postgis-Datenbank. Anschließend können Sie Ihre Tabelle mit vollständigen SQL-Anweisungen abfragen.
- Verwenden Sie das Auflösen-Werkzeug (Vektor> Geoverarbeitungswerkzeuge> Auflösen), um Ihre Shapefiles mithilfe des Felds "city_name" aufzulösen. Obwohl dies eine seltsame Methode ist, enthält die DBF-Datei des resultierenden Shapefiles die Liste, die Sie benötigen.
- Werfen Sie einen Blick auf das Plugin für Gruppenstatistiken (1.6) . Sie können "city_name" als Klassifizierungsfeld verwenden und auf "Berechnen" klicken. Es werden einige Statistiken für jede Stadt berechnet. Anschließend können Sie das Ergebnis kopieren und die Städteliste extrahieren.
Ich habe gerade bemerkt, dass es unter Vektor> Analysewerkzeuge ein Tool zum Auflisten eindeutiger Werte gibt , das genau das ist, was man für diese Aufgabe benötigt. So einfach ... keine Umgehungen und keine Notwendigkeit für Plugins.
Versuchen Sie es mit etwas wie:
quelle
Verwenden Sie den Abfrage-Generator in QGIS. Wechseln Sie in den Feldern des Abfrage-Generators zum Feld für den Städtenamen. Gehen Sie zu Werten, fügen Sie alle hinzu. Löschen Sie alle Nullen.
Erstellen Sie ein Skript, das city name = "london" und city name = "paris" ähnelt, bis Sie die vollständige Liste der Namen haben, und führen Sie das Skript aus. Jetzt sind alle Städtenamen ausgewählt. Sie können die ausgewählte Form als Formdatei exportieren und in eine postgresql-Datenbank importieren.
Um ein postgresql-Backend für QGIS zu verwenden, installieren Sie einen postgresql-Stack mit Geoserver, postgresql und einer postgis-fähigen Datenbank in postgresql. Sie müssen QGIS mit dem Server verbinden. Spielen Sie ein bisschen herum und Sie werden es herausfinden.
quelle