diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-16 19:46:48 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-16 19:46:48 +0000 |
commit | 311bcfc6b3acdd6fd152798c7f287ddf74fa2a98 (patch) | |
tree | 0ec307299b1dada3701e42f4ca6eda57d708261e /contrib/btree_gist/sql/not_equal.sql | |
parent | Initial commit. (diff) | |
download | postgresql-15-upstream.tar.xz postgresql-15-upstream.zip |
Adding upstream version 15.4.upstream/15.4upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'contrib/btree_gist/sql/not_equal.sql')
-rw-r--r-- | contrib/btree_gist/sql/not_equal.sql | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/contrib/btree_gist/sql/not_equal.sql b/contrib/btree_gist/sql/not_equal.sql new file mode 100644 index 0000000..6dfac5d --- /dev/null +++ b/contrib/btree_gist/sql/not_equal.sql @@ -0,0 +1,36 @@ + +SET enable_seqscan to false; + +-- test search for "not equals" + +CREATE TABLE test_ne ( + a TIMESTAMP, + b NUMERIC +); +CREATE INDEX test_ne_idx ON test_ne USING gist (a, b); + +INSERT INTO test_ne SELECT '2009-01-01', 10.7 FROM generate_series(1,1000); +INSERT INTO test_ne VALUES('2007-02-03', -91.3); +INSERT INTO test_ne VALUES('2011-09-01', 43.7); +INSERT INTO test_ne SELECT '2009-01-01', 10.7 FROM generate_series(1,1000); + +SET enable_indexscan to false; + +EXPLAIN (COSTS OFF) SELECT * FROM test_ne WHERE a <> '2009-01-01' AND b <> 10.7; + +SELECT * FROM test_ne WHERE a <> '2009-01-01' AND b <> 10.7; + +RESET enable_indexscan; + +-- test search for "not equals" using an exclusion constraint + +CREATE TABLE zoo ( + cage INTEGER, + animal TEXT, + EXCLUDE USING gist (cage WITH =, animal WITH <>) +); + +INSERT INTO zoo VALUES(123, 'zebra'); +INSERT INTO zoo VALUES(123, 'zebra'); +INSERT INTO zoo VALUES(123, 'lion'); +INSERT INTO zoo VALUES(124, 'lion'); |