Vector Operation Function Interface
Functions implemented by the vector operation function include: vector size comparison, vector addition, vector subtraction, and vector bitwise multiplication.
inner_product
Function: Calculates the inner product of two vectors.
Type of input parameter 1: floatvector
Type of input parameter 2: floatvector
Output parameter type: float8
Code example:
gaussdb=# SELECT inner_product(floatvector('[1,2,3]'), floatvector('[5,-1,3.5]')); gaussdb=# SELECT inner_product('[1,2,3]', '[5,-1,3.5]');
vector_negative_inner_product
Function: Calculates the negative inner product of two vectors.
Type of input parameter 1: floatvector
Type of input parameter 2: floatvector
Output parameter type: float8
Code example:
gaussdb=# SELECT vector_negative_inner_product(floatvector('[1,2,3]'), floatvector('[5,-1,3.5]')); gaussdb=# SELECT vector_negative_inner_product('[1,2,3]', '[5,-1,3.5]');
vector_dims
Function: Returns the dimension value of the floatvector vector.
Input parameter type: floatvector
Output parameter type: int4
Code example:
gaussdb=# SELECT vector_dims(floatvector('[1,2,3]')); gaussdb=# SELECT vector_dims('[1,2,3]');
vector_norm
Function: Returns the L2 norm of a vector.
Input parameter type: floatvector
Output parameter type: float8
Code example:
gaussdb=# SELECT vector_norm(floatvector('[1,2,3]')); gaussdb=# SELECT vector_norm('[1,2,3]');
vector_add
Function: Calculates the sum of two vectors.
Type of input parameter 1: floatvector
Type of input parameter 2: floatvector
Output parameter type: floatvector
Code example:
gaussdb=# SELECT vector_add(floatvector('[1,2,3]'), floatvector('[5,-1,3.5]')); gaussdb=# SELECT vector_add('[1,2,3]', '[5,-1,3.5]');
vector_sub
Function: Calculates the subtraction between two vectors.
Type of input parameter 1: floatvector
Type of input parameter 2: floatvector
Output parameter type: floatvector
Code example:
gaussdb=# SELECT vector_sub(floatvector('[1,2,3]'), floatvector('[5,-1,3.5]')); gaussdb=# SELECT vector_sub('[1,2,3]', '[5,-1,3.5]');
vector_lt
Function: Compares the vector size and checks whether vector 1 is less than vector 2.
Type of input parameter 1: floatvector
Type of input parameter 2: floatvector
Output parameter type: Boolean
Code example:
gaussdb=# SELECT vector_lt(floatvector('[1,2,3]'), floatvector('[5,-1,3.5]')); gaussdb=# SELECT vector_lt('[1,2,3]', '[5,-1,3.5]');
vector_le
Function: Compares the vector size and checks whether vector 1 is less than or equal to vector 2.
Type of input parameter 1: floatvector
Type of input parameter 2: floatvector
Output parameter type: Boolean
Code example:
gaussdb=# SELECT vector_le(floatvector('[1,2,3]'), floatvector('[5,-1,3.5]')); gaussdb=# SELECT vector_le('[1,2,3]', '[5,-1,3.5]');
vector_eq
Function: Compares whether vectors are equal.
Type of input parameter 1: floatvector
Type of input parameter 2: floatvector
Output parameter type: Boolean
Code example:
gaussdb=# SELECT vector_eq(floatvector('[1,2,3]'), floatvector('[5,-1,3.5]')); gaussdb=# SELECT vector_eq('[1,2,3]', '[5,-1,3.5]');
vector_ne
Function: Compares whether vectors are unequal.
Type of input parameter 1: floatvector
Type of input parameter 2: floatvector
Output parameter type: Boolean
Code example:
gaussdb=# SELECT vector_ne(floatvector('[1,2,3]'), floatvector('[5,-1,3.5]')); gaussdb=# SELECT vector_ne('[1,2,3]', '[5,-1,3.5]');
vector_ge
Function: Compares the vector size and checks whether vector 1 is greater than or equal to vector 2.
Type of input parameter 1: floatvector
Type of input parameter 2: floatvector
Output parameter type: Boolean
Code example:
gaussdb=# SELECT vector_ge(floatvector('[1,2,3]'), floatvector('[5,-1,3.5]')); gaussdb=# SELECT vector_ge('[1,2,3]', '[5,-1,3.5]');
vector_gt
Function: Compares the vector size and checks whether vector 1 is greater than vector 2.
Type of input parameter 1: floatvector
Type of input parameter 2: floatvector
Output parameter type: Boolean
Code example:
gaussdb=# SELECT vector_gt(floatvector('[1,2,3]'), floatvector('[5,-1,3.5]')); gaussdb=# SELECT vector_gt('[1,2,3]', '[5,-1,3.5]');
vector_cmp
Function: Compares vector sizes.
Type of input parameter 1: floatvector
Type of input parameter 2: floatvector
Output parameter type: int4
Code example:
gaussdb=# SELECT vector_cmp(floatvector('[1,2,3]'), floatvector('[5,-1,3.5]')); gaussdb=# SELECT vector_cmp('[1,2,3]', '[5,-1,3.5]');
vector_accum
Function: Returns the vector accumulation.
Type of input parameter 1: anyarray
Type of input parameter 2: floatvector
Output parameter type: anyarray
Code example:
-- This is a system function and is not recommended. If this function is required, the array element type must be float8.
gaussdb=# SELECT vector_accum(array[cast(3 as float8),1,2,3], floatvector('[5,-1,3.5]'));
vector_combine
Function: Combines vectors.
Type of input parameter 1: anyarray
Type of input parameter 2: anyarray
Output parameter type: anyarray
Code example:
-- This is a system function and is not recommended. If this function is required, the array element type must be float8.
gaussdb=# SELECT vector_combine(array[cast(1 as float8),2,3], array[cast(1 as float8),2,3]);
vector_avg
Function: Averages vectors.
Input parameter type: anyarray
Output parameter type: floatvector
Code example:
-- This is a system function and is not recommended. If this function is required, the array element type must be float8.
gaussdb=# SELECT vector_avg(array[cast(1 as float8),2,3]);
bool_vector_dims
Function: Returns the dimension value of the boolvector vector.
Input parameter type: boolvector
Output parameter type: int4
Code example:
gaussdb=# SELECT bool_vector_dims(boolvector('[1,1,1]'));
bool_vector_eq
Function: Compares whether Boolean vectors are equal.
Type of input parameter 1: boolvector
Type of input parameter 2: boolvector
Output parameter type: Boolean
Code example:
gaussdb=# SELECT bool_vector_eq(boolvector('[1,1,1]'), boolvector('[1,1,1]')); gaussdb=# SELECT bool_vector_eq('[1,1,1]', '[1,1,1]');
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot