Skip to content

Commit 1b9806a

Browse files
author
Vladlen Popolitov
committed
README.md updated with usage exmples
1 parent 68ada43 commit 1b9806a

File tree

1 file changed

+55
-0
lines changed

1 file changed

+55
-0
lines changed

README.md

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -259,6 +259,61 @@ Operator class names for all types implemented in anyarray.
259259
|varbit|_varbit_aa_ops|_varbit_aa_ops|_varbit_aa_ops|
260260
|varchar|_varchar_aa_ops|_varchar_aa_ops|_varchar_aa_ops|
261261

262+
Operator class names implemented for back compatibility with RUM versions 1.2 and 1.3
263+
-----------------------------------------------------------
264+
265+
All anyarray support moved from RUM extension to AnyArray extension since RUM version 1.4 . Operator class names `aa_rum_anyarray_ops` and `aa_rum_anyarray_addon_ops` are implemented in AnyArray.
266+
267+
### aa_rum_anyarray_ops example
268+
269+
```SQL
270+
CREATE INDEX idx_test_int4 ON test_int4 USING rum (v aa_rum_anyarray_ops);
271+
272+
SET enable_seqscan=off;
273+
274+
EXPLAIN (COSTS OFF) SELECT t, v FROM test_int4 WHERE v && '{43,50}' ORDER BY t;
275+
EXPLAIN (COSTS OFF) SELECT t, v FROM test_int4 WHERE v @> '{43,50}' ORDER BY t;
276+
EXPLAIN (COSTS OFF) SELECT t, v FROM test_int4 WHERE v <@ '{0,1,2,3,4,5,6,7,8,9,10}' ORDER BY t;
277+
EXPLAIN (COSTS OFF) SELECT t, v FROM test_int4 WHERE v = '{0,1,2,3,4,5,6,7,8,9,10}' ORDER BY t;
278+
EXPLAIN (COSTS OFF) SELECT t, v FROM test_int4 WHERE v % '{0,1,2,3,4,5,6,7,8,9,10}' ORDER BY t;
279+
280+
SELECT t, v FROM test_int4 WHERE v && '{43,50}' ORDER BY t;
281+
SELECT t, v FROM test_int4 WHERE v @> '{43,50}' ORDER BY t;
282+
SELECT t, v FROM test_int4 WHERE v <@ '{0,1,2,3,4,5,6,7,8,9,10}' ORDER BY t;
283+
SELECT t, v FROM test_int4 WHERE v = '{0,1,2,3,4,5,6,7,8,9,10}' ORDER BY t;
284+
SET anyarray.similarity_type=cosine;
285+
SELECT t, v FROM test_int4 WHERE v % '{0,1,2,3,4,5,6,7,8,9,10}' ORDER BY t;
286+
SET anyarray.similarity_type=jaccard;
287+
SELECT t, v FROM test_int4 WHERE v % '{0,1,2,3,4,5,6,7,8,9,10}' ORDER BY t;
288+
SET anyarray.similarity_type=overlap;
289+
SET anyarray.similarity_threshold = 3;
290+
SELECT t, v FROM test_int4 WHERE v % '{0,1,2,3,4,5,6,7,8,9,10}' ORDER BY t;
291+
RESET anyarray.similarity_threshold;
292+
```
293+
294+
### aa_rum_anyarray_addon_ops example
295+
296+
```SQL
297+
CREATE TABLE test_array (
298+
i int2[]
299+
);
300+
INSERT INTO test_array VALUES ('{}'), ('{0}'), ('{1,2,3,4}'), ('{1,2,3}'), ('{1,2}'), ('{1}');
301+
ALTER TABLE test_array ADD COLUMN add_info timestamp;
302+
303+
WITH q as (
304+
SELECT row_number() OVER (ORDER BY i) idx, ctid FROM test_array
305+
)
306+
UPDATE test_array SET add_info = '2016-05-16 14:21:25'::timestamp +
307+
format('%s days', q.idx)::interval
308+
FROM q WHERE test_array.ctid = q.ctid;
309+
310+
CREATE INDEX idx_array ON test_array
311+
USING rum (i aa_rum_anyarray_addon_ops, add_info)
312+
WITH (attach = 'add_info', to = 'i');
313+
314+
SELECT * FROM test_array WHERE i && '{1}' ORDER BY add_info <=> '2016-05-16 14:21:25' LIMIT 10;
315+
```
316+
262317
## Upgrading
263318

264319
Install the latest version and run in every database you want to upgrade:

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy