Files
greptimedb/tests/cases/standalone/common/function/arithmetic.result
LFC cbe0cf4a74 refactor: rewrite some UDFs to DataFusion style (part 2) (#6967)
* refactor: rewrite some UDFs to DataFusion style (part 2)

Signed-off-by: luofucong <luofc@foxmail.com>

* deal with vector UDFs `(scalar, scalar)` situation, and try getting the scalar value reference everytime

Signed-off-by: luofucong <luofc@foxmail.com>

* reduce some vector literal parsing

Signed-off-by: luofucong <luofc@foxmail.com>

* fix ci

Signed-off-by: luofucong <luofc@foxmail.com>

---------

Signed-off-by: luofucong <luofc@foxmail.com>
2025-09-18 06:37:27 +00:00

161 lines
4.0 KiB
Plaintext

SELECT MOD(18, 4);
+-------------------------+
| mod(Int64(18),Int64(4)) |
+-------------------------+
| 2 |
+-------------------------+
SELECT MOD(-18, 4);
+--------------------------+
| mod(Int64(-18),Int64(4)) |
+--------------------------+
| -2 |
+--------------------------+
SELECT MOD(18.0, 4.0);
+-----------------------------+
| mod(Float64(18),Float64(4)) |
+-----------------------------+
| 2.0 |
+-----------------------------+
SELECT MOD(18, 0);
Error: 3001(EngineExecuteQuery), Divide by zero error
SELECT POW (2, 5);
+--------------------------+
| power(Int64(2),Int64(5)) |
+--------------------------+
| 32 |
+--------------------------+
SELECT POW (1.01, 365);
+---------------------------------+
| power(Float64(1.01),Int64(365)) |
+---------------------------------+
| 37.78343433288728 |
+---------------------------------+
SELECT POW (0.99, 365);
+---------------------------------+
| power(Float64(0.99),Int64(365)) |
+---------------------------------+
| 0.025517964452291125 |
+---------------------------------+
SELECT CLAMP(10, 0, 1);
+------------------------------------+
| clamp(Int64(10),Int64(0),Int64(1)) |
+------------------------------------+
| 1 |
+------------------------------------+
SELECT CLAMP(-10, 0, 1);
+-------------------------------------+
| clamp(Int64(-10),Int64(0),Int64(1)) |
+-------------------------------------+
| 0 |
+-------------------------------------+
SELECT CLAMP(0.5, 0, 1);
+---------------------------------------+
| clamp(Float64(0.5),Int64(0),Int64(1)) |
+---------------------------------------+
| 0.5 |
+---------------------------------------+
SELECT CLAMP(10, 1, 0);
Error: 3001(EngineExecuteQuery), Execution error: min '1' > max '0'
SELECT CLAMP_MIN(10, 12);
+--------------------------------+
| clamp_min(Int64(10),Int64(12)) |
+--------------------------------+
| 12 |
+--------------------------------+
SELECT CLAMP_MIN(10, 8);
+-------------------------------+
| clamp_min(Int64(10),Int64(8)) |
+-------------------------------+
| 10 |
+-------------------------------+
SELECT CLAMP_MIN(10.5, 10.6);
+----------------------------------------+
| clamp_min(Float64(10.5),Float64(10.6)) |
+----------------------------------------+
| 10.6 |
+----------------------------------------+
SELECT CLAMP_MIN(10.5, 10.4);
+----------------------------------------+
| clamp_min(Float64(10.5),Float64(10.4)) |
+----------------------------------------+
| 10.5 |
+----------------------------------------+
SELECT CLAMP_MIN(-5, -3);
+--------------------------------+
| clamp_min(Int64(-5),Int64(-3)) |
+--------------------------------+
| -3 |
+--------------------------------+
SELECT CLAMP_MAX(10, 12);
+--------------------------------+
| clamp_max(Int64(10),Int64(12)) |
+--------------------------------+
| 10 |
+--------------------------------+
SELECT CLAMP_MAX(10, 8);
+-------------------------------+
| clamp_max(Int64(10),Int64(8)) |
+-------------------------------+
| 8 |
+-------------------------------+
SELECT CLAMP_MAX(10.5, 10.6);
+----------------------------------------+
| clamp_max(Float64(10.5),Float64(10.6)) |
+----------------------------------------+
| 10.5 |
+----------------------------------------+
SELECT CLAMP_MAX(10.5, 10.4);
+----------------------------------------+
| clamp_max(Float64(10.5),Float64(10.4)) |
+----------------------------------------+
| 10.4 |
+----------------------------------------+
SELECT CLAMP_MAX(-5, -7);
+--------------------------------+
| clamp_max(Int64(-5),Int64(-7)) |
+--------------------------------+
| -7 |
+--------------------------------+