1 |
drop type __pgswish cascade; |
drop type __pgswish cascade; |
2 |
|
|
3 |
CREATE TYPE __pgswish AS ( |
CREATE TYPE __pgswish AS ( |
4 |
rank int, |
rank integer, |
5 |
path text, |
path text, |
6 |
headline text, |
headline text, |
7 |
size int, |
size integer |
|
properties text[] |
|
8 |
); |
); |
9 |
|
|
10 |
-- pgswish('/index/path/','query', 'property' 'sort'); |
-- Search swish-e index as table |
11 |
CREATE OR REPLACE FUNCTION pgswish(text, text, text, text) |
-- select * from pgswish('/index/path/','query', 'sort'); |
12 |
|
CREATE OR REPLACE FUNCTION pgswish(text, text, text) |
13 |
RETURNS SETOF __pgswish |
RETURNS SETOF __pgswish |
14 |
AS 'pgswish', 'pgswish' |
AS 'pgswish', 'pgswish' |
15 |
LANGUAGE C IMMUTABLE STRICT; |
LANGUAGE C IMMUTABLE STRICT; |
16 |
|
|
17 |
|
-- get property value while retriving results with pgswish |
18 |
|
-- select *,pgtextprop('property') from pgswish(...) ... |
19 |
|
|
20 |
|
CREATE OR REPLACE FUNCTION swtextprop(text) |
21 |
|
RETURNS text |
22 |
|
AS 'pgswish', 'swtextprop' |
23 |
|
LANGUAGE C STRICT; |