Files
greptimedb/tests/cases/standalone/common/function/vector/vector.result
Kould ed8c072a5e feat(vector): add vector functions vec_sub & vec_sum & vec_elem_sum (#5230)
* feat(vector): add sub function

* chore: added check for vector length misalignment

* feat(vector): add `vec_sum` & `vec_elem_sum`

* chore: codefmt

* update lock file

Signed-off-by: Ruihang Xia <waynestxia@gmail.com>

---------

Signed-off-by: Ruihang Xia <waynestxia@gmail.com>
Co-authored-by: Ruihang Xia <waynestxia@gmail.com>
2025-01-04 02:12:27 +08:00

129 lines
5.9 KiB
Plaintext

SELECT vec_to_string(parse_vec('[1.0, 2.0]'));
+----------------------------------------------+
| vec_to_string(parse_vec(Utf8("[1.0, 2.0]"))) |
+----------------------------------------------+
| [1,2] |
+----------------------------------------------+
SELECT vec_to_string(parse_vec('[1.0, 2.0, 3.0]'));
+---------------------------------------------------+
| vec_to_string(parse_vec(Utf8("[1.0, 2.0, 3.0]"))) |
+---------------------------------------------------+
| [1,2,3] |
+---------------------------------------------------+
SELECT vec_to_string(parse_vec('[]'));
+--------------------------------------+
| vec_to_string(parse_vec(Utf8("[]"))) |
+--------------------------------------+
| [] |
+--------------------------------------+
SELECT vec_to_string(vec_mul('[1.0, 2.0]', '[3.0, 4.0]'));
+---------------------------------------------------------------+
| vec_to_string(vec_mul(Utf8("[1.0, 2.0]"),Utf8("[3.0, 4.0]"))) |
+---------------------------------------------------------------+
| [3,8] |
+---------------------------------------------------------------+
SELECT vec_to_string(vec_mul(parse_vec('[1.0, 2.0]'), '[3.0, 4.0]'));
+--------------------------------------------------------------------------+
| vec_to_string(vec_mul(parse_vec(Utf8("[1.0, 2.0]")),Utf8("[3.0, 4.0]"))) |
+--------------------------------------------------------------------------+
| [3,8] |
+--------------------------------------------------------------------------+
SELECT vec_to_string(vec_mul('[1.0, 2.0]', parse_vec('[3.0, 4.0]')));
+--------------------------------------------------------------------------+
| vec_to_string(vec_mul(Utf8("[1.0, 2.0]"),parse_vec(Utf8("[3.0, 4.0]")))) |
+--------------------------------------------------------------------------+
| [3,8] |
+--------------------------------------------------------------------------+
SELECT vec_to_string(vec_sub('[1.0, 1.0]', '[1.0, 2.0]'));
+---------------------------------------------------------------+
| vec_to_string(vec_sub(Utf8("[1.0, 1.0]"),Utf8("[1.0, 2.0]"))) |
+---------------------------------------------------------------+
| [0,-1] |
+---------------------------------------------------------------+
SELECT vec_to_string(vec_sub('[-1.0, -1.0]', '[1.0, 2.0]'));
+-----------------------------------------------------------------+
| vec_to_string(vec_sub(Utf8("[-1.0, -1.0]"),Utf8("[1.0, 2.0]"))) |
+-----------------------------------------------------------------+
| [-2,-3] |
+-----------------------------------------------------------------+
SELECT vec_to_string(vec_sub('[1.0, 1.0]', parse_vec('[1.0, 2.0]')));
+--------------------------------------------------------------------------+
| vec_to_string(vec_sub(Utf8("[1.0, 1.0]"),parse_vec(Utf8("[1.0, 2.0]")))) |
+--------------------------------------------------------------------------+
| [0,-1] |
+--------------------------------------------------------------------------+
SELECT vec_to_string(vec_sub('[-1.0, -1.0]', parse_vec('[1.0, 2.0]')));
+----------------------------------------------------------------------------+
| vec_to_string(vec_sub(Utf8("[-1.0, -1.0]"),parse_vec(Utf8("[1.0, 2.0]")))) |
+----------------------------------------------------------------------------+
| [-2,-3] |
+----------------------------------------------------------------------------+
SELECT vec_to_string(vec_sub(parse_vec('[1.0, 1.0]'), '[1.0, 2.0]'));
+--------------------------------------------------------------------------+
| vec_to_string(vec_sub(parse_vec(Utf8("[1.0, 1.0]")),Utf8("[1.0, 2.0]"))) |
+--------------------------------------------------------------------------+
| [0,-1] |
+--------------------------------------------------------------------------+
SELECT vec_to_string(vec_sub(parse_vec('[-1.0, -1.0]'), '[1.0, 2.0]'));
+----------------------------------------------------------------------------+
| vec_to_string(vec_sub(parse_vec(Utf8("[-1.0, -1.0]")),Utf8("[1.0, 2.0]"))) |
+----------------------------------------------------------------------------+
| [-2,-3] |
+----------------------------------------------------------------------------+
SELECT vec_elem_sum('[1.0, 2.0, 3.0]');
+---------------------------------------+
| vec_elem_sum(Utf8("[1.0, 2.0, 3.0]")) |
+---------------------------------------+
| 6.0 |
+---------------------------------------+
SELECT vec_elem_sum('[-1.0, -2.0, -3.0]');
+------------------------------------------+
| vec_elem_sum(Utf8("[-1.0, -2.0, -3.0]")) |
+------------------------------------------+
| -6.0 |
+------------------------------------------+
SELECT vec_elem_sum(parse_vec('[1.0, 2.0, 3.0]'));
+--------------------------------------------------+
| vec_elem_sum(parse_vec(Utf8("[1.0, 2.0, 3.0]"))) |
+--------------------------------------------------+
| 6.0 |
+--------------------------------------------------+
SELECT vec_elem_sum(parse_vec('[-1.0, -2.0, -3.0]'));
+-----------------------------------------------------+
| vec_elem_sum(parse_vec(Utf8("[-1.0, -2.0, -3.0]"))) |
+-----------------------------------------------------+
| -6.0 |
+-----------------------------------------------------+