90 lines
1.2 KiB
SQL
90 lines
1.2 KiB
SQL
# name: test/sql/function/numeric/test_nextafter.test
|
|
# description: Next After test
|
|
# group: [numeric]
|
|
|
|
statement error
|
|
select nextafter()
|
|
----
|
|
|
|
statement error
|
|
select nextafter('bla','bla')
|
|
----
|
|
|
|
query I
|
|
select nextafter(NULL,1)
|
|
----
|
|
NULL
|
|
|
|
query I
|
|
select nextafter(1,NULL)
|
|
----
|
|
NULL
|
|
|
|
query I
|
|
select nextafter(99, 1)
|
|
----
|
|
99
|
|
|
|
query R
|
|
select nextafter(99.0::DOUBLE, 1.0::DOUBLE) < 99
|
|
----
|
|
True
|
|
|
|
query R
|
|
select nextafter(99.0::DOUBLE, 99.0::DOUBLE) = 99
|
|
----
|
|
True
|
|
|
|
query R
|
|
select nextafter(99.0::DOUBLE, 100.0::DOUBLE) > 99
|
|
----
|
|
True
|
|
|
|
query R
|
|
select nextafter(nextafter(99.0::DOUBLE, 100.0::DOUBLE),0::DOUBLE) = 99
|
|
----
|
|
True
|
|
|
|
query R
|
|
select nextafter(99.0::FLOAT, 1.0::FLOAT) < 99
|
|
----
|
|
True
|
|
|
|
query R
|
|
select nextafter(99.0::FLOAT, 100.0::FLOAT) > 99
|
|
----
|
|
True
|
|
|
|
query R
|
|
select nextafter(nextafter(99.0::FLOAT, 100.0::FLOAT),0::FLOAT) = 99
|
|
----
|
|
True
|
|
|
|
statement ok
|
|
create table test (a FLOAT)
|
|
|
|
statement ok
|
|
INSERT INTO test VALUES (10),(20),(30),(40)
|
|
|
|
query R
|
|
select nextafter(a, 0::FLOAT) from test
|
|
----
|
|
9.999999
|
|
19.999998
|
|
29.999998
|
|
39.999996
|
|
|
|
statement ok
|
|
create table test_twoc (a FLOAT, b FLOAT)
|
|
|
|
statement ok
|
|
INSERT INTO test_twoc VALUES (10,1),(20,21),(30,1),(40,41)
|
|
|
|
query R
|
|
select nextafter(a, b) from test_twoc
|
|
----
|
|
9.999999
|
|
20.000002
|
|
29.999998
|
|
40.000004
|