ST_MPointFromWKB function

The ST_MPointFromWKB function takes a well-known binary representation of a multipoint and, optionally, a spatial reference system identifier as input parameters and returns the corresponding multipoint.

If the given well-known binary representation is null, then null is returned.

The recommended function for achieving the same result is the ST_MultiPoint function. It is recommended because of its flexibility: ST_MultiPoint takes additional forms of input as well as the well-known binary representation.

Syntax

Read syntax diagramSkip visual syntax diagramdb2gse.ST_MPointFromWKB(wkb ,srs_id )

Parameters

wkb
A value of type BLOB(2G) that contains the well-known binary representation of the resulting multipoint.
srs_id
A value of type INTEGER that identifies the spatial reference system for the resulting multipoint.

If the srs_id parameter is omitted, the spatial reference system with the numeric identifier 0 (zero) is used.

If the specified srs_id does not identify a spatial reference system listed in the catalog view DB2GSE.ST_SPATIAL_REFERENCE_SYSTEMS, then an exception condition is raised (SQLSTATE 38SU1).

Return type

db2gse.ST_MultiPoint

Example

In the following example, the lines of results have been reformatted for readability. The spacing in your results will vary according to your online display.

This example illustrates how ST_MPointFromWKB can be used to create a multipoint from its well-known binary representation. The geometry is a multipoint in spatial reference system 1. In this example, the multipoint gets stored with ID = 10 in the GEOMETRY column of the SAMPLE_MPOINTS table, and then the WKB column is updated with its well-known binary representation (using the ST_AsBinary function). Finally, the ST_MPointFromWKB function is used to return the multipoint from the WKB column. The X and Y coordinates for this geometry are: (44, 14) (35, 16) (24, 13).

The SAMPLE_MPOINTS table has a GEOMETRY column, where the multipoint is stored, and a WKB column, where the multipoint's well-known binary representation is stored.

SET CURRENT FUNCTION PATH = CURRENT FUNCTION PATH, db2gse
CREATE TABLE sample_mpoints (id INTEGER, geometry ST_MultiPoint, 
    wkb BLOB(32K))

INSERT INTO sample_mpoints
  VALUES (10, ST_MultiPoint ('multipoint ( 4 14, 35 16, 24 13)', 1))

UPDATE sample_mpoints AS temporary_correlated
  SET wkb = ST_AsBinary( geometry )
  WHERE id = temporary_correlated.id

In the following SELECT statement, the ST_MPointFromWKB function is used to retrieve the multipoint from the WKB column.

SELECT id, CAST( ST_AsText( ST_MLineFromWKB (wkb)) AS VARCHAR(100)) MULTIPOINT
  FROM sample_mpoints
  WHERE id = 10
Results:

ID         MULTIPOINT
---------- --------------------------------------------------------------------
        10 MULTIPOINT (44.00000000 14.00000000, 35.00000000 
              16.00000000 24.00000000 13.00000000)