diff options
author | Peter Eisentraut <peter@eisentraut.org> | 2022-03-30 17:23:13 +0200 |
---|---|---|
committer | Peter Eisentraut <peter@eisentraut.org> | 2022-03-30 17:23:13 +0200 |
commit | cd7ea75e4b1b0c44476bef4f00075b9a4b07733e (patch) | |
tree | 5defb7830de1d79e69d2c40d9065ac15ee335f00 | |
parent | b21c4cf95103fae63aeb534f8ee37fbf90a1f907 (diff) | |
download | postgresql-cd7ea75e4b1b0c44476bef4f00075b9a4b07733e.tar.gz postgresql-cd7ea75e4b1b0c44476bef4f00075b9a4b07733e.zip |
Additional tests for range_intersect_agg(anymultirange)
Author: Paul Jungwirth <pj@illuminatedcomputing.com>
Reviewed-by: Chapman Flack <chap@anastigmatix.net>
Discussion: https://www.postgresql.org/message-id/flat/007ef255-35ef-fd26-679c-f97e7a7f30c2@illuminatedcomputing.com
-rw-r--r-- | src/test/regress/expected/multirangetypes.out | 39 | ||||
-rw-r--r-- | src/test/regress/sql/multirangetypes.sql | 9 |
2 files changed, 48 insertions, 0 deletions
diff --git a/src/test/regress/expected/multirangetypes.out b/src/test/regress/expected/multirangetypes.out index bde3f248a75..84c3e7c9f3b 100644 --- a/src/test/regress/expected/multirangetypes.out +++ b/src/test/regress/expected/multirangetypes.out @@ -2784,6 +2784,9 @@ FROM (VALUES {[a,f],[g,j)} (1 row) +-- +-- range_intersect_agg function +-- select range_intersect_agg(nmr) from nummultirange_test; range_intersect_agg --------------------- @@ -2796,13 +2799,49 @@ select range_intersect_agg(nmr) from nummultirange_test where false; (1 row) +select range_intersect_agg(null::nummultirange) from nummultirange_test; + range_intersect_agg +--------------------- + +(1 row) + +select range_intersect_agg(nmr) from (values ('{[1,3]}'::nummultirange), ('{[6,12]}'::nummultirange)) t(nmr); + range_intersect_agg +--------------------- + {} +(1 row) + +select range_intersect_agg(nmr) from (values ('{[1,6]}'::nummultirange), ('{[3,12]}'::nummultirange)) t(nmr); + range_intersect_agg +--------------------- + {[3,6]} +(1 row) + +select range_intersect_agg(nmr) from (values ('{[1,6], [10,12]}'::nummultirange), ('{[4,14]}'::nummultirange)) t(nmr); + range_intersect_agg +--------------------- + {[4,6],[10,12]} +(1 row) + -- test with just one input: +select range_intersect_agg(nmr) from (values ('{}'::nummultirange)) t(nmr); + range_intersect_agg +--------------------- + {} +(1 row) + select range_intersect_agg(nmr) from (values ('{[1,2]}'::nummultirange)) t(nmr); range_intersect_agg --------------------- {[1,2]} (1 row) +select range_intersect_agg(nmr) from (values ('{[1,6], [10,12]}'::nummultirange)) t(nmr); + range_intersect_agg +--------------------- + {[1,6],[10,12]} +(1 row) + select range_intersect_agg(nmr) from nummultirange_test where nmr @> 4.0; range_intersect_agg --------------------- diff --git a/src/test/regress/sql/multirangetypes.sql b/src/test/regress/sql/multirangetypes.sql index df1edb4d31a..fbc1b9282b0 100644 --- a/src/test/regress/sql/multirangetypes.sql +++ b/src/test/regress/sql/multirangetypes.sql @@ -572,10 +572,19 @@ FROM (VALUES ('[h,j)'::textrange) ) t(r); +-- +-- range_intersect_agg function +-- select range_intersect_agg(nmr) from nummultirange_test; select range_intersect_agg(nmr) from nummultirange_test where false; +select range_intersect_agg(null::nummultirange) from nummultirange_test; +select range_intersect_agg(nmr) from (values ('{[1,3]}'::nummultirange), ('{[6,12]}'::nummultirange)) t(nmr); +select range_intersect_agg(nmr) from (values ('{[1,6]}'::nummultirange), ('{[3,12]}'::nummultirange)) t(nmr); +select range_intersect_agg(nmr) from (values ('{[1,6], [10,12]}'::nummultirange), ('{[4,14]}'::nummultirange)) t(nmr); -- test with just one input: +select range_intersect_agg(nmr) from (values ('{}'::nummultirange)) t(nmr); select range_intersect_agg(nmr) from (values ('{[1,2]}'::nummultirange)) t(nmr); +select range_intersect_agg(nmr) from (values ('{[1,6], [10,12]}'::nummultirange)) t(nmr); select range_intersect_agg(nmr) from nummultirange_test where nmr @> 4.0; create table nummultirange_test2(nmr nummultirange); |