Documentation
/ SQL
/ Functions
Array Functions
所有LIST
函数都与ARRAY
数据类型一起使用。此外,还支持几个ARRAY
原生函数。
Function |
Description |
array_value(index) |
创建一个包含参数值的ARRAY 。 |
array_cross_product(array1, array2) |
计算两个大小为3的数组的叉积。数组元素不能为NULL 。 |
array_cosine_similarity(array1, array2) |
计算两个相同大小的数组之间的余弦相似度。数组元素不能为NULL 。数组可以有任何大小,只要两个参数的大小相同。 |
array_cosine_distance(array1, array2) |
计算两个相同大小数组之间的余弦距离。数组元素不能为NULL 。数组可以有任何大小,只要两个参数的大小相同。这相当于1.0 - array_cosine_similarity |
array_distance(array1, array2) |
计算两个相同大小的数组之间的距离。数组元素不能为NULL 。数组可以有任何大小,只要两个参数的大小相同。 |
array_inner_product(array1, array2) |
计算两个相同大小的数组之间的内积。数组元素不能为NULL 。数组可以有任何大小,只要两个参数的大小相同。 |
array_negative_inner_product(array1, array2) |
计算两个相同大小数组之间的负内积。数组元素不能为NULL 。数组可以有任何大小,只要两个参数的大小相同。这等同于-array_inner_product |
array_dot_product(array1, array2) |
array_inner_product(array1, array2) 的别名。 |
array_negative_dot_product(array1, array2) |
array_negative_inner_product(array1, array2) 的别名。 |
描述 |
创建一个包含参数值的ARRAY 。 |
示例 |
array_value(1.0::FLOAT, 2.0::FLOAT, 3.0::FLOAT) |
结果 |
[1.0, 2.0, 3.0] |
描述 |
计算两个大小为3的数组的叉积。数组元素不能为NULL 。 |
示例 |
array_cross_product(array_value(1.0::FLOAT, 2.0::FLOAT, 3.0::FLOAT), array_value(2.0::FLOAT, 3.0::FLOAT, 4.0::FLOAT)) |
结果 |
[-1.0, 2.0, -1.0] |
描述 |
计算两个相同大小的数组之间的余弦相似度。数组元素不能为NULL 。数组可以有任何大小,只要两个参数的大小相同。 |
示例 |
array_cosine_similarity(array_value(1.0::FLOAT, 2.0::FLOAT, 3.0::FLOAT), array_value(2.0::FLOAT, 3.0::FLOAT, 4.0::FLOAT)) |
结果 |
0.9925833 |
描述 |
计算两个大小相同的数组之间的余弦距离。数组元素不能为NULL 。数组可以有任何大小,只要两个参数的大小相同。这相当于1.0 - array_cosine_similarity 。 |
示例 |
array_cosine_distance(array_value(1.0::FLOAT, 2.0::FLOAT, 3.0::FLOAT), array_value(2.0::FLOAT, 3.0::FLOAT, 4.0::FLOAT)) |
结果 |
0.007416606 |
描述 |
计算两个相同大小的数组之间的距离。数组元素不能为NULL 。数组可以有任何大小,只要两个参数的大小相同。 |
示例 |
array_distance(array_value(1.0::FLOAT, 2.0::FLOAT, 3.0::FLOAT), array_value(2.0::FLOAT, 3.0::FLOAT, 4.0::FLOAT)) |
结果 |
1.7320508 |
描述 |
计算两个大小相同的数组之间的内积。数组元素不能为NULL 。数组可以有任何大小,只要两个参数的大小相同。 |
示例 |
array_inner_product(array_value(1.0::FLOAT, 2.0::FLOAT, 3.0::FLOAT), array_value(2.0::FLOAT, 3.0::FLOAT, 4.0::FLOAT)) |
结果 |
20.0 |
描述 |
计算两个大小相同的数组之间的负内积。数组元素不能为NULL 。数组可以有任何大小,只要两个参数的大小相同。这相当于-array_inner_product |
示例 |
array_inner_product(array_value(1.0::FLOAT, 2.0::FLOAT, 3.0::FLOAT), array_value(2.0::FLOAT, 3.0::FLOAT, 4.0::FLOAT)) |
结果 |
-20.0 |
描述 |
array_inner_product(array1, array2) 的别名。 |
示例 |
array_dot_product(l1, l2) |
结果 |
20.0 |
描述 |
array_negative_inner_product(array1, array2) 的别名。 |
示例 |
array_negative_dot_product(l1, l2) |
结果 |
-20.0 |