Benutzer- und Referenzhandbuch

ST_Relate

ST_Relate vergleicht zwei Geometrien und gibt 1 (TRUE) zurück, wenn die Geometrien die von der Mustermatrix-Zeichenfolge DE-9IM definierten Bedingungen erfüllen; andernfalls wird 0 (FALSE) zurückgegeben. Informationen zu der DE-9IM-Mustermatrix finden Sie im Abschnitt Prädikatfunktionen.

Syntax

db2gse.ST_Relate(g1 db2gse.ST_Geometry, g2 db2gse.ST_Geometry, patternMatrix CHAR(9))

Rückgabetyp

Integer

Beispiele

Eine DE-9IM-Mustermatrix ist eine Einheit zum Vergleich von Geometrien. Es gibt verschiedene Arten solcher Matrizen. Die Mustermatrix equals gibt beispielsweise an, ob zwei Geometrien gleich sind.

In diesem Beispiel wird eine "equals"-Mustermatrix (siehe Tabelle 57) von links nach rechts und von oben nach unten in eine Zeichenfolge ("T*F**FFF*") eingelesen.

Tabelle 57. Equals-Mustermatrix



b




Innenbereich

Begrenzung

Außenbereich


Innenbereich

T

*

F

a

Begrenzung

*

*

F


Außenbereich

F

F

*

Als nächstes wird die Tabelle RELATE_TEST mit der folgenden Anweisung CREATE TABLE erstellt.

CREATE TABLE RELATE_TEST (rid integer, g1 db2gse.ST_Geometry, 
g2 db2gse.ST_Geometry, g3 db2gse.ST_Geometry);

Die folgenden INSERT-Anweisungen fügen eine Muster-Unterklasse in die Tabelle RELATE_TEST ein.

INSERT INTO RELATE_TEST VALUES( 
       1, 
       db2gse.ST_PointFromText('point (10.02 20.01)', 
            db2gse.coordref()..srid(0), 
       db2gse.ST_PointFromText('point (10.02 20.01)', 
            db2gse.coordref()..srid(0), 
        db2gse.ST_PointFromText('point (30.01 20.01)',
db2gse.coordref()..srid(0)
)

Die folgende Anweisung SELECT und die entsprechende Ergebnisgruppe listet den Unterklassennamen auf, der in der Spalte GEOTYPE mit der Dimension dieses Geotyps gespeichert ist.

SELECT rid, relate(g1,g2, 'T*F**FFF*') equals FROM relate_test
 
RID      equals        
-------- -----------  
1        1           
 
  1 record(s) selected.


[ Seitenanfang | Vorherige Seite | Nächste Seite ]