mirror of
https://github.com/pgvector/pgvector.git
synced 2026-07-28 23:02:43 +08:00
Improved tests for rescans / nested loop joins [skip ci]
This commit is contained in:
@@ -78,14 +78,13 @@ SELECT COUNT(*) FROM (SELECT * FROM t ORDER BY val <=> (SELECT NULL::vector)) t2
|
||||
3
|
||||
(1 row)
|
||||
|
||||
SELECT * FROM t CROSS JOIN LATERAL (SELECT * FROM t t2 ORDER BY val <=> t.val LIMIT 1) t2 WHERE t.val IS NOT NULL ORDER BY t.val;
|
||||
SELECT * FROM t CROSS JOIN LATERAL (SELECT * FROM t t2 ORDER BY val <=> t.val LIMIT 1) t2 WHERE t.val != '[0,0,0]' ORDER BY t.val;
|
||||
val | val
|
||||
---------+---------
|
||||
[0,0,0] | [1,1,1]
|
||||
[1,1,1] | [1,1,1]
|
||||
[1,2,3] | [1,2,3]
|
||||
[1,2,4] | [1,2,4]
|
||||
(4 rows)
|
||||
(3 rows)
|
||||
|
||||
DROP TABLE t;
|
||||
-- L1
|
||||
|
||||
@@ -81,14 +81,13 @@ SELECT COUNT(*) FROM (SELECT * FROM t ORDER BY val <=> (SELECT NULL::vector)) t2
|
||||
3
|
||||
(1 row)
|
||||
|
||||
SELECT * FROM t CROSS JOIN LATERAL (SELECT * FROM t t2 ORDER BY val <=> t.val LIMIT 1) t2 WHERE t.val IS NOT NULL ORDER BY t.val;
|
||||
SELECT * FROM t CROSS JOIN LATERAL (SELECT * FROM t t2 ORDER BY val <=> t.val LIMIT 1) t2 WHERE t.val != '[0,0,0]' ORDER BY t.val;
|
||||
val | val
|
||||
---------+---------
|
||||
[0,0,0] | [1,2,3]
|
||||
[1,1,1] | [1,1,1]
|
||||
[1,2,3] | [1,2,3]
|
||||
[1,2,4] | [1,2,4]
|
||||
(4 rows)
|
||||
(3 rows)
|
||||
|
||||
DROP TABLE t;
|
||||
-- iterative
|
||||
|
||||
@@ -41,7 +41,7 @@ INSERT INTO t (val) VALUES ('[1,2,4]');
|
||||
SELECT * FROM t ORDER BY val <=> '[3,3,3]';
|
||||
SELECT COUNT(*) FROM (SELECT * FROM t ORDER BY val <=> '[0,0,0]') t2;
|
||||
SELECT COUNT(*) FROM (SELECT * FROM t ORDER BY val <=> (SELECT NULL::vector)) t2;
|
||||
SELECT * FROM t CROSS JOIN LATERAL (SELECT * FROM t t2 ORDER BY val <=> t.val LIMIT 1) t2 WHERE t.val IS NOT NULL ORDER BY t.val;
|
||||
SELECT * FROM t CROSS JOIN LATERAL (SELECT * FROM t t2 ORDER BY val <=> t.val LIMIT 1) t2 WHERE t.val != '[0,0,0]' ORDER BY t.val;
|
||||
|
||||
DROP TABLE t;
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ INSERT INTO t (val) VALUES ('[1,2,4]');
|
||||
SELECT * FROM t ORDER BY val <=> '[3,3,3]';
|
||||
SELECT COUNT(*) FROM (SELECT * FROM t ORDER BY val <=> '[0,0,0]') t2;
|
||||
SELECT COUNT(*) FROM (SELECT * FROM t ORDER BY val <=> (SELECT NULL::vector)) t2;
|
||||
SELECT * FROM t CROSS JOIN LATERAL (SELECT * FROM t t2 ORDER BY val <=> t.val LIMIT 1) t2 WHERE t.val IS NOT NULL ORDER BY t.val;
|
||||
SELECT * FROM t CROSS JOIN LATERAL (SELECT * FROM t t2 ORDER BY val <=> t.val LIMIT 1) t2 WHERE t.val != '[0,0,0]' ORDER BY t.val;
|
||||
|
||||
DROP TABLE t;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user