Fehlermeldung bei Table-Join

Hallo zusammen!

Ich bekomme einen Tabellen-Join nicht hin.

Ich möchte eine View erzeugen die aus 2 Tabellen besteht.

  1. Tabelle: “ax_strassenachse
  2. Tabelle: “ax_strasse

Die Verbindung soll über die folgenden Attribute erfolgen:

Für Tabelle 1 “ax_strassenachse”, Attribut: “istteilvon” (Datentyp: character(16)[])

Für Tabelle 2 “ax_strasse”, Attribut: “gml_id” (Datentyp: character(16))

Es wird mir folgender Fehler ausgegeben:

********** Fehler **********

FEHLER: Operator existiert nicht: character[] = character
SQL Status:42883
Hinweis:Kein Operator stimmt mit dem angegebenen Namen und den Argumenttypen überein. Sie müssen möglicherweise ausdrückliche Typumwandlungen hinzufügen.
Zeichen:133



Mein Code sieht wie folgt aus:

CREATE VIEW v_durchgangsstrassen_test AS
SELECT * FROM ax_strassenachse
FULL OUTER JOIN ax_strasse
ON ax_strassenachse.istteilvon=ax_strasse.gml_id;


Hat jemand eine Idee wie ich das hinbekomme?

Vielen Dank und Grüße!
Mirco

istteilvon ist ein array, aber gml_id ist keines. Die Frage warum Du ein Array verwendest spare ich mir mal.

Wenn Du die beiden Tabellen joinen willst, musst Du mit dem ANY operator arbeiten.

So was in der Richtung:

CREATE VIEW v_durchgangsstrassen_test AS
SELECT * 
FROM ax_strassenachse
  FULL OUTER JOIN ax_strasse ON ax_strasse.gml_id = any(ax_strassenachse.istteilvon);

Hallo castorp,

vielen Dank! Hat geklappt. :slight_smile:

Ich greife hier auf eine bestehende Datenbank zu. Änderungen direkt
am Datenbankschema sollten unterbleiben. Nunja.

Viele Grüße,

Mirco