mirror of
https://github.com/pgvector/pgvector.git
synced 2026-06-06 05:51:21 +08:00
Added separate SQL function for halfvec_combine [skip ci]
This commit is contained in:
@@ -178,11 +178,14 @@ CREATE FUNCTION halfvec_accum(double precision[], halfvec) RETURNS double precis
|
|||||||
CREATE FUNCTION halfvec_avg(double precision[]) RETURNS halfvec
|
CREATE FUNCTION halfvec_avg(double precision[]) RETURNS halfvec
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
||||||
|
|
||||||
|
CREATE FUNCTION halfvec_combine(double precision[], double precision[]) RETURNS double precision[]
|
||||||
|
AS 'MODULE_PATHNAME', 'vector_combine' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
||||||
|
|
||||||
CREATE AGGREGATE avg(halfvec) (
|
CREATE AGGREGATE avg(halfvec) (
|
||||||
SFUNC = halfvec_accum,
|
SFUNC = halfvec_accum,
|
||||||
STYPE = double precision[],
|
STYPE = double precision[],
|
||||||
FINALFUNC = halfvec_avg,
|
FINALFUNC = halfvec_avg,
|
||||||
COMBINEFUNC = vector_combine,
|
COMBINEFUNC = halfvec_combine,
|
||||||
INITCOND = '{0}',
|
INITCOND = '{0}',
|
||||||
PARALLEL = SAFE
|
PARALLEL = SAFE
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -479,13 +479,16 @@ CREATE FUNCTION halfvec_accum(double precision[], halfvec) RETURNS double precis
|
|||||||
CREATE FUNCTION halfvec_avg(double precision[]) RETURNS halfvec
|
CREATE FUNCTION halfvec_avg(double precision[]) RETURNS halfvec
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
||||||
|
|
||||||
|
CREATE FUNCTION halfvec_combine(double precision[], double precision[]) RETURNS double precision[]
|
||||||
|
AS 'MODULE_PATHNAME', 'vector_combine' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
||||||
|
|
||||||
-- halfvec aggregates
|
-- halfvec aggregates
|
||||||
|
|
||||||
CREATE AGGREGATE avg(halfvec) (
|
CREATE AGGREGATE avg(halfvec) (
|
||||||
SFUNC = halfvec_accum,
|
SFUNC = halfvec_accum,
|
||||||
STYPE = double precision[],
|
STYPE = double precision[],
|
||||||
FINALFUNC = halfvec_avg,
|
FINALFUNC = halfvec_avg,
|
||||||
COMBINEFUNC = vector_combine,
|
COMBINEFUNC = halfvec_combine,
|
||||||
INITCOND = '{0}',
|
INITCOND = '{0}',
|
||||||
PARALLEL = SAFE
|
PARALLEL = SAFE
|
||||||
);
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user