ST_MPolyFromWKB
Definition
Mit ST_MPointFromWKB wird anhand eines Well-known Binary-Formats (WKB) vom Typ ST_MultiPolygon und einer Raumbezugs-ID ein ST_MultiPolygon-Objekt zurückgegeben.
Syntax
Oracle
sde.st_mpolyfromwkb (wkb blob, srid integer)
PostgreSQL
sde.st_mpolyfromwkb (wkb bytea, srid integer)
Rückgabetyp
ST_MultiPolygon
Beispiel
Im folgenden Beispiel wurden die Zeilen der Ergebnisse zur besseren Lesbarkeit neu formatiert. Die Abstände der Ihnen angezeigten Ergebnisse können abhängig von Ihrer Online-Darstellung variieren. In diesem Beispiel wird veranschaulicht, wie ST_MPolyFromWKB zum Erstellen eines Multipolygons aus einem Well-known Binary-Format verwendet werden kann. Die Geometrie ist ein Multipolygon im Raumbezugssystem 1. In diesem Beispiel wird das Multipolygon mit der ID = 10 in der Spalte "geometry" der Tabelle "sample_mpolys" gespeichert; anschließend wird die Spalte "wbk" mit einem Well-known Binary-Format (mithilfe der Funktion ST_AsBinary) aktualisiert. Zum Schluss wird mit der ST_MPolyFromWKB-Funktion das Multipolygon aus der Spalte "wbk" zurückgegeben. Die X- und Y-Koordinaten für diese Geometrie lauten V-Polygon 1: (1, 72) (4, 79) (5, 76) (1, 72), V-Polygon 2: (10, 20) (10, 40) (30, 41)(10, 20) und V-Polygon 3: (9, 43) (7, 44) (6, 47) (9, 43). Die Tabelle "sample_mpolys" verfügt über die Spalte "geometry", in der das Multipolygon gespeichert wird, sowie über die Spalte "wbk", in der die WBK-Repräsentation des Multipolygons gespeichert wird.
Oracle
CREATE TABLE sample_mpolys (id integer, geometry sde.st_geometry, wkb blob); INSERT INTO SAMPLE_MPOLYS VALUES ( 10, sde.st_multipolygon ('multipolygon (((1 72, 4 79, 5 76, 1 72), (10 20, 10 40, 30 41, 10 20), (9 43, 7 44, 6 47, 9 43)))', 0) ); UPDATE SAMPLE_MPOLYS SET wkb = sde.st_asbinary (geometry) WHERE id = 10;
PostgreSQL
CREATE TABLE sample_mpolys (id integer, geometry sde.st_geometry, wkb bytea); INSERT INTO sample_mpolys VALUES ( 10, sde.st_multipolygon ('multipolygon (((1 72, 4 79, 5 76, 1 72), (10 20, 10 40, 30 41, 10 20), (9 43, 7 44, 6 47, 9 43)))', 0) ); UPDATE sample_mpolys SET wkb = sde.st_asbinary (geometry) WHERE id = 10;
In der folgenden SELECT-Anweisung wird mit der ST_MPolyFromWKB-Funktion das Multipolygon aus der Spalte "WBK" abgerufen.
Oracle
SELECT id, sde.st_astext (sde.st_mpolyfromwkb (wkb,0)) MULTIPOLYGON FROM SAMPLE_MPOLYS WHERE id = 10; ID MULTIPOLYGON 10 MULTIPOLYGON (((10.00000000 20.00000000, 30.00000000 41.00000000, 10.00000000 40.00000000, 10.00000000 20.00000000)), (1.00000000 72.00000000, 5.00000000 76.00000000, 4.00000000 79.0000000, 1.00000000 72,00000000)), (9.00000000 43.00000000, 6.00000000 47.00000000, 7.00000000 44.00000000, 9.00000000 43.00000000 )))
PostgreSQL
SELECT id, sde.st_astext (sde.st_mpolyfromwkb (wkb,0)) AS MULTIPOLYGON FROM sample_mpolys WHERE id = 10; id multipolygon 10 MULTIPOLYGON (((10 20, 30 41, 10 40, 10 20)), (1. 72, 5 76, 4 79, 1 72)), (9 43, 6 47, 7 44, 9 43 )))