postgis/postgis/geography_brin.sql.in
Darafei Praliaskouski 06eebf5bc3 Remove support for Postgres < 9.5.
Closes https://github.com/postgis/postgis/pull/349
Closes #4229


git-svn-id: http://svn.osgeo.org/postgis/trunk@17095 b70326c6-7e19-0410-871a-916f4a2858ee
2018-12-03 09:03:57 +00:00

74 lines
2.2 KiB
MySQL

--------------------------------------------------------------------
-- BRIN support for geographies --
--------------------------------------------------------------------
--------------------------------
-- the needed cross-operators --
--------------------------------
-- Availability: 2.3.0
CREATE OR REPLACE FUNCTION overlaps_geog(gidx, geography)
RETURNS boolean
AS 'MODULE_PATHNAME','gserialized_gidx_geog_overlaps'
LANGUAGE 'c' IMMUTABLE STRICT;
-- Availability: 2.3.0
CREATE OR REPLACE FUNCTION overlaps_geog(gidx, gidx)
RETURNS boolean
AS 'MODULE_PATHNAME','gserialized_gidx_gidx_overlaps'
LANGUAGE 'c' IMMUTABLE STRICT;
-- Availability: 2.3.0
CREATE OPERATOR && (
LEFTARG = gidx,
RIGHTARG = geography,
PROCEDURE = overlaps_geog,
COMMUTATOR = &&
);
-- Availability: 2.3.0
CREATE OR REPLACE FUNCTION overlaps_geog(geography, gidx)
RETURNS boolean
AS
'SELECT $2 OPERATOR(@extschema@.&&) $1;'
LANGUAGE SQL IMMUTABLE STRICT;
-- Availability: 2.3.0
CREATE OPERATOR && (
LEFTARG = geography,
RIGHTARG = gidx,
PROCEDURE = overlaps_geog,
COMMUTATOR = &&
);
-- Availability: 2.3.0
CREATE OPERATOR && (
LEFTARG = gidx,
RIGHTARG = gidx,
PROCEDURE = overlaps_geog,
COMMUTATOR = &&
);
--------------------------------
-- the OpFamily --
--------------------------------
-- Availability: 2.3.0
CREATE OR REPLACE FUNCTION geog_brin_inclusion_add_value(internal, internal, internal, internal) RETURNS boolean
AS 'MODULE_PATHNAME','geog_brin_inclusion_add_value'
LANGUAGE 'c';
-- Availability: 2.3.0
CREATE OPERATOR CLASS brin_geography_inclusion_ops
DEFAULT FOR TYPE geography
USING brin AS
FUNCTION 1 brin_inclusion_opcinfo(internal),
FUNCTION 2 geog_brin_inclusion_add_value(internal, internal, internal, internal),
FUNCTION 3 brin_inclusion_consistent(internal, internal, internal),
FUNCTION 4 brin_inclusion_union(internal, internal, internal),
OPERATOR 3 &&(geography, geography),
OPERATOR 3 &&(geography, gidx),
OPERATOR 3 &&(gidx, geography),
OPERATOR 3 &&(gidx, gidx),
STORAGE gidx;