Kouhei Sutou
null+****@clear*****
Sat Jul 1 13:36:52 JST 2017
Kouhei Sutou 2017-07-01 13:36:52 +0900 (Sat, 01 Jul 2017) New Revision: a9d34655c3af0e3c833f6fef49ec30c19e1d46c7 https://github.com/pgroonga/pgroonga/commit/a9d34655c3af0e3c833f6fef49ec30c19e1d46c7 Message: text_term_search_v2: support comparison operators Added files: expected/function/query-expand/normalize.out sql/function/query-expand/normalize.sql Modified files: data/pgroonga--1.2.1--1.2.2.sql data/pgroonga.sql Modified: data/pgroonga--1.2.1--1.2.2.sql (+8 -0) =================================================================== --- data/pgroonga--1.2.1--1.2.2.sql 2017-07-01 13:31:42 +0900 (690cd8b) +++ data/pgroonga--1.2.1--1.2.2.sql 2017-07-01 13:36:52 +0900 (7524183) @@ -7,3 +7,11 @@ CREATE FUNCTION pgroonga.query_expand(tableName cstring, LANGUAGE C STABLE STRICT; + +ALTER OPERATOR FAMILY pgroonga.text_term_search_ops_v2 USING pgroonga + ADD + OPERATOR 1 < (text, text), + OPERATOR 2 <= (text, text), + OPERATOR 3 = (text, text), + OPERATOR 4 >= (text, text), + OPERATOR 5 > (text, text); Modified: data/pgroonga.sql (+5 -0) =================================================================== --- data/pgroonga.sql 2017-07-01 13:31:42 +0900 (95d913c) +++ data/pgroonga.sql 2017-07-01 13:36:52 +0900 (7a33f14) @@ -1043,6 +1043,11 @@ CREATE OPERATOR CLASS pgroonga.text_array_full_text_search_ops_v2 CREATE OPERATOR CLASS pgroonga.text_term_search_ops_v2 FOR TYPE text USING pgroonga AS + OPERATOR 1 <, + OPERATOR 2 <=, + OPERATOR 3 =, + OPERATOR 4 >=, + OPERATOR 5 >, OPERATOR 16 &^, OPERATOR 17 &^~, OPERATOR 20 &^| (text, text[]), Added: expected/function/query-expand/normalize.out (+15 -0) 100644 =================================================================== --- /dev/null +++ expected/function/query-expand/normalize.out 2017-07-01 13:36:52 +0900 (57c5d47) @@ -0,0 +1,15 @@ +CREATE TABLE synonyms ( + term text, + synonyms text[] +); +CREATE INDEX synonyms_term_index ON synonyms + USING pgroonga (term pgroonga.text_term_search_ops_v2); +INSERT INTO synonyms VALUES ('Groonga', ARRAY['Groonga', 'Senna']); +INSERT INTO synonyms VALUES ('GROONGA', ARRAY['"Full text search"']); +SELECT pgroonga.query_expand('synonyms', 'term', 'synonyms', 'groonga'); + query_expand +------------------------------------------------ + ((Groonga) OR (Senna) OR ("Full text search")) +(1 row) + +DROP TABLE synonyms; Added: sql/function/query-expand/normalize.sql (+14 -0) 100644 =================================================================== --- /dev/null +++ sql/function/query-expand/normalize.sql 2017-07-01 13:36:52 +0900 (2583b3c) @@ -0,0 +1,14 @@ +CREATE TABLE synonyms ( + term text, + synonyms text[] +); + +CREATE INDEX synonyms_term_index ON synonyms + USING pgroonga (term pgroonga.text_term_search_ops_v2); + +INSERT INTO synonyms VALUES ('Groonga', ARRAY['Groonga', 'Senna']); +INSERT INTO synonyms VALUES ('GROONGA', ARRAY['"Full text search"']); + +SELECT pgroonga.query_expand('synonyms', 'term', 'synonyms', 'groonga'); + +DROP TABLE synonyms; -------------- next part -------------- HTML����������������������������... ダウンロード