mirror of
https://github.com/pgvector/pgvector.git
synced 2026-06-06 05:51:21 +08:00
24 lines
864 B
SQL
24 lines
864 B
SQL
-- complain if script is sourced in psql, rather than via CREATE EXTENSION
|
|
\echo Use "ALTER EXTENSION vector UPDATE TO '0.4.0'" to load this file. \quit
|
|
|
|
-- remove this single line for Postgres < 13
|
|
ALTER TYPE vector SET (STORAGE = extended);
|
|
|
|
CREATE FUNCTION vector_accum(double precision[], vector) RETURNS double precision[]
|
|
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
|
|
|
CREATE FUNCTION vector_avg(double precision[]) RETURNS vector
|
|
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
|
|
|
CREATE FUNCTION vector_combine(double precision[], double precision[]) RETURNS double precision[]
|
|
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
|
|
|
CREATE AGGREGATE avg(vector) (
|
|
SFUNC = vector_accum,
|
|
STYPE = double precision[],
|
|
FINALFUNC = vector_avg,
|
|
COMBINEFUNC = vector_combine,
|
|
INITCOND = '{0}',
|
|
PARALLEL = SAFE
|
|
);
|