You've already forked pgvecto.rs
mirror of
https://github.com/tensorchord/pgvecto.rs.git
synced 2025-07-30 19:23:05 +03:00
* basic support Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * cargo clippy Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * optimize for ivf Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * patch for merge Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * set vector cast to non-implicit Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * add dimension in sparse vector Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * support creating sparse vector from spilt array and kv string Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * cargo clippy Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * move vector type from Storage trait to G trait Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * export svector function by schema manually Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * spilt index and value for sparse vector Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * update offsets from u32 to usize Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * align SVecf32 to 8 && make SVecf32 support binary Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * cargo clippy Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * convert the computation to branchless Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * refactor Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * cargo fmt Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> * update to_svector arguments name Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com> --------- Signed-off-by: Mingzhuo Yin <yinmingzhuo@gmail.com>
38 lines
933 B
Plaintext
38 lines
933 B
Plaintext
statement ok
|
|
SET search_path TO pg_temp, vectors;
|
|
|
|
statement ok
|
|
CREATE TABLE t (id bigserial, val svector);
|
|
|
|
statement ok
|
|
INSERT INTO t (val) SELECT NULL FROM generate_series(1, 1000);
|
|
|
|
statement ok
|
|
INSERT INTO t (val) SELECT ARRAY[random()]::real[]::vector::svector FROM generate_series(1, 1000);
|
|
|
|
statement ok
|
|
INSERT INTO t (val) SELECT ARRAY[random(), random()]::real[]::vector::svector FROM generate_series(1, 1000);
|
|
|
|
statement ok
|
|
INSERT INTO t (val) SELECT ARRAY[random(), random(), random()]::real[]::vector::svector FROM generate_series(1, 1000);
|
|
|
|
statement ok
|
|
COPY t TO '/tmp/data.bin' WITH (FORMAT binary);
|
|
|
|
statement ok
|
|
CREATE TABLE t2 (id bigserial, val svector);
|
|
|
|
statement ok
|
|
COPY t2 FROM '/tmp/data.bin' WITH (FORMAT binary);
|
|
|
|
query I
|
|
SELECT SUM(((t.val = t2.val) OR (t.val IS NULL and t2.val IS NULL))::int) FROM t FULL OUTER JOIN t2 ON t.id = t2.id;
|
|
----
|
|
4000
|
|
|
|
statement ok
|
|
DROP TABLE t;
|
|
|
|
statement ok
|
|
DROP TABLE t2;
|