ST_AsBinary
定義
ST_AsBinary は、ジオメトリ オブジェクトを入力として、その WKB 表現を返します。
構文
Oracle および PostgreSQL
sde.st_asbinary (geometry sde.st_geometry)
SQLite
st_asbinary (geometry geometryblob)
戻り値のタイプ
Oracle および PostgreSQL
ST_Geometry
SQLite
Geometryblob
例
この例では、レコード 1111 の WKB 列に、レコード 1100 の GEOMETRY 列の内容を入力しています。
Oracle
CREATE TABLE sample_points (
id integer not null,
geometry sde.st_geometry,
wkb blob
);
INSERT INTO SAMPLE_POINTS (id, geometry) VALUES (
1100,
sde.st_geometry ('point (10 20)', 4326)
);
INSERT INTO SAMPLE_POINTS (id, wkb) VALUES (
1111,
(SELECT sde.st_asbinary (geometry) FROM sample_points WHERE id = 1100)
);
SELECT id, sde.st_astext (sde.st_geomfromwkb (wkb, 4326))
FROM SAMPLE_POINTS
WHERE id = 1111;
ID Point
1111 POINT (10.00000000 20.00000000)
PostgreSQL
CREATE TABLE sample_points (
id serial,
geometry sde.st_geometry,
wkb bytea);
INSERT INTO sample_points (geometry) VALUES (
sde.st_point (10, 20, 4326)
);
INSERT INTO sample_points (wkb) VALUES (
(SELECT sde.st_asbinary (geometry) FROM sample_points WHERE id = 1100)
);
SELECT id, sde.st_astext (sde.st_geomfromwkb (wkb, 4326))
FROM sample_points
WHERE id = 1111;
ID st_astext
1111 POINT (10 20)
SQLite
CREATE TABLE sample_points (
id integer primary key autoincrement not null,
wkb blob
);
SELECT AddGeometryColumn(
NULL,
'sample_points',
'geometry',
4326,
'point',
'xy',
'null'
);
INSERT INTO sample_points (geometry) VALUES (
st_point (10, 20, 4326)
);
INSERT INTO sample_points (wkb) VALUES (
(SELECT st_asbinary (geometry) FROM sample_points WHERE id = 1)
);
SELECT id, st_astext (st_geomfromwkb (wkb, 4326))
FROM sample_points
WHERE id = 2;
ID st_astext
2 POINT (10.00000000 20.00000000)
関連トピック
5/25/2014