Hallo Frank, ich habe mein Problem nun mit folgender WHERE Klausel gelöst:
WHERE TRUE = ALL (SELECT UNNEST(feld) IS NULL) Das scheint nach ersten Tests auch zu funktionieren ;) Schöne Grüße, Reinhard Am 27.02.2018 14:22 schrieb R. Reiterer:
Achso, ich habe kein leeres Array, sondern ein Array mit einem einzelnen Nullwert. Aus dieser Perspektive wird manches klarer. Schöne Grüße, Reinhard Am 27.02.2018 13:37 schrieb R. Reiterer:Hallo Frank, danke für deine Antwort. Die {NULL} Werte stammen aus einer räumlichen Abfrage mit Geometrien aus einer zweiten Tabelle. Wo die WHERE Bedingung nicht erfüllt ist, erhalte ich {NULL}. Ansonsten wird aus den Werden der betroffenen Geometrien aus Tabelle 2 ein Array erzeugt. Dein Lösungsvorschlag erscheint vielversprechend. Ich kann ihn am WE testen und melde mich dann nochmal. Schöne Grüße, Reinhard Am 27.02.2018 09:44 schrieb Frank Broniewski:Moin, '{NULL}' ist irgendwie komisch, aber egal. Wenn es dir genau nur um '{NULL}' geht, und nicht um irgendeinen NULL Wert im Array, kannst du das folgendermaßen lösen: Folgende Tabelle als Test: CREATE TABLE public.test_empty_array (id integer NOT NULL DEFAULT nextval('test_empty_array_id_seq'::regclass),text character varying[], zahl bigint[], CONSTRAINT pk_test_id PRIMARY KEY (id) ) Hier die Werte 1;"{foo,bar,baz}";"{1,2,3,4,5}" 2;"{}";"{}" 3;"{NULL}";"{NULL}" SQL select *, text[1] is null, zahl[1] is null from test_empty_array; Abfrageergebnis 1;"{foo,bar,baz}";"{1,2,3,4,5}";f;f 2;"{}";"{}";t;t 3;"{NULL}";"{NULL}";t;t 'Feld[1] is null' sollte also dein Problem lösen HTH Frank Dipl. Geogr. Frank Broniewski Waldhölzbacher Str. 51 66679 Losheim am See 06872 509 068 4 0176 611 26 9 2 6 www.frankbroniewski.com -----Ursprüngliche Nachricht-----Von: FOSSGIS-Talk-Liste [mailto:fossgis-talk-liste-boun...@fossgis.de]Im Auftrag von R. Reiterer Gesendet: Montag, 26. Februar 2018 23:17 An: Fossgis talk liste <fossgis-talk-liste@fossgis.de> Betreff: [FOSSGIS-Talk] Leere Arrays in PostgreSQL abfragen Hallo, ich habe in PostgreSQL/PostGIS leere (?) Arrays, welche in der QGIS DB-Verwaltung als {NULL} dargestellt werden.Leider gelingt es mir nicht, diese Datensätze mit {NULL} Arrays abzufragen.Was ich bereits probiert habe: WHERE feld = '{}' -- cannot switch from manual field specification to automatic field numbering WHERE array_length(feld, 1) = 0 WHERE cardinality(feld) = 0 array_lenght(feld, 1) und cardinality(feld) geben jeweils '1' für {NULL} Arrays aus. Hat jemand einen Tipp für mich? Schöne Grüße und vielen Dank, Reinhard -- .................................................................... FOSSGIS 2018, die Konferenz für Open Source GIS mit OpenData und OpenStreetMap in Bonn!21.-24. März 2018 an der Universität Bonn https://fossgis-konferenz.de/2018/18.-25. März OSGeo Code Sprint im BaseCamp Bonn https://wiki.osgeo.org/wiki/OSGeo_Code_Sprint_2018 FOSSGIS Veranstaltungen 2018 https://www.fossgis.de/node/306 FOSSGIS e.V, der Verein zur Förderung von Freier Software aus dem GIS-Bereich und Freier Geodaten! https://www.fossgis.de/ https://twitter.com/fossgis_eV ____________________________________________________________________ FOSSGIS-Talk-Liste mailing list FOSSGIS-Talk-Liste@fossgis.de https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste-- .................................................................... FOSSGIS 2018, die Konferenz für Open Source GIS mit OpenData und OpenStreetMap in Bonn! 21.-24. März 2018 an der Universität Bonn https://fossgis-konferenz.de/2018/ 18.-25. März OSGeo Code Sprint im BaseCamp Bonn https://wiki.osgeo.org/wiki/OSGeo_Code_Sprint_2018 FOSSGIS Veranstaltungen 2018 https://www.fossgis.de/node/306 FOSSGIS e.V, der Verein zur Förderung von Freier Software aus dem GIS-Bereich und Freier Geodaten! https://www.fossgis.de/ https://twitter.com/fossgis_eV ____________________________________________________________________ FOSSGIS-Talk-Liste mailing list FOSSGIS-Talk-Liste@fossgis.de https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste-- .................................................................... FOSSGIS 2018, die Konferenz für Open Source GIS mit OpenData und OpenStreetMap in Bonn! 21.-24. März 2018 an der Universität Bonn https://fossgis-konferenz.de/2018/ 18.-25. März OSGeo Code Sprint im BaseCamp Bonn https://wiki.osgeo.org/wiki/OSGeo_Code_Sprint_2018 FOSSGIS Veranstaltungen 2018 https://www.fossgis.de/node/306 FOSSGIS e.V, der Verein zur Förderung von Freier Software aus dem GIS-Bereich und Freier Geodaten! https://www.fossgis.de/ https://twitter.com/fossgis_eV ____________________________________________________________________ FOSSGIS-Talk-Liste mailing list FOSSGIS-Talk-Liste@fossgis.de https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste
-- .................................................................... FOSSGIS 2018, die Konferenz für Open Source GIS mit OpenData und OpenStreetMap in Bonn! 21.-24. März 2018 an der Universität Bonn https://fossgis-konferenz.de/2018/ 18.-25. März OSGeo Code Sprint im BaseCamp Bonn https://wiki.osgeo.org/wiki/OSGeo_Code_Sprint_2018 FOSSGIS Veranstaltungen 2018 https://www.fossgis.de/node/306 FOSSGIS e.V, der Verein zur Förderung von Freier Software aus dem GIS-Bereich und Freier Geodaten! https://www.fossgis.de/ https://twitter.com/fossgis_eV ____________________________________________________________________ FOSSGIS-Talk-Liste mailing list FOSSGIS-Talk-Liste@fossgis.de https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste