pgs2norm(col2) gin_bigm_ops,
pgs2norm(col3) gin_bigm_ops);
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, 'v(株)', col1) FROM char_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('v(株)'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('v(株)'));
pgs2snippet1
-----------------------
ロハAbCd12③★Ⅳ㈱★');
(1 row)
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, '②⓪', col1) FROM char_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('②⓪'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('②⓪'));
pgs2snippet1
---------------
★ 20★13.04.05
(1 row)
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, 'アプリケーション', col1) FROM char_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('アプリケーション'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('アプリケーション'));
pgs2snippet1
------------------------
ト★アプリケーション★側
pgs2norm(col2) gin_bigm_ops,
pgs2norm(col3) gin_bigm_ops);
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, 'v(株)', col1) FROM varchar_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('v(株)'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('v(株)'));
pgs2snippet1
-----------------------
ロハAbCd12③★Ⅳ㈱★');
(1 row)
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, '②⓪', col1) FROM varchar_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('②⓪'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('②⓪'));
pgs2snippet1
---------------
★ 20★13.04.05
(1 row)
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, 'アプリケーション', col1) FROM varchar_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('アプリケーション'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('アプリケーション'));
pgs2snippet1
------------------------
ト★アプリケーション★側
pgs2norm(col2) gin_bigm_ops,
pgs2norm(col3) gin_bigm_ops);
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, 'v(株)', col1) FROM text_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('v(株)'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('v(株)'));
pgs2snippet1
-----------------------
ロハAbCd12③★Ⅳ㈱★');
(1 row)
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, '②⓪', col1) FROM text_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('②⓪'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('②⓪'));
pgs2snippet1
---------------
★ 20★13.04.05
(1 row)
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, 'アプリケーション', col1) FROM text_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('アプリケーション'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('アプリケーション'));
pgs2snippet1
------------------------
ト★アプリケーション★側
(1 row)
+-- Test the case where condition has "AND".
+SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col1) LIKE likequery(pgs2norm('解釈')) AND
+ pgs2norm(col1) LIKE likequery(pgs2norm('実装')) AND
+ pgs2norm(col1) LIKE likequery(pgs2norm('場合'));
+ count
+-------
+ 1
+(1 row)
+
+EXPLAIN (costs off) SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col1) LIKE likequery(pgs2norm('解釈')) AND
+ pgs2norm(col1) LIKE likequery(pgs2norm('実装')) AND
+ pgs2norm(col1) LIKE likequery(pgs2norm('場合'));
+ QUERY PLAN
+----------------------------------------------------------------------------------------------------------------------------------------------
+ Aggregate
+ -> Bitmap Heap Scan on text_tbl
+ Recheck Cond: ((pgs2norm(col1) ~~ '%解釈%'::text) AND (pgs2norm(col1) ~~ '%実装%'::text) AND (pgs2norm(col1) ~~ '%場合%'::text))
+ -> Bitmap Index Scan on text_tbl_idx
+ Index Cond: ((pgs2norm(col1) ~~ '%解釈%'::text) AND (pgs2norm(col1) ~~ '%実装%'::text) AND (pgs2norm(col1) ~~ '%場合%'::text))
+(5 rows)
+
+SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col1) LIKE likequery(pgs2norm('解釈')) AND
+ pgs2norm(col2) LIKE likequery(pgs2norm('ユーサ゛')) AND
+ pgs2norm(col3) LIKE likequery(pgs2norm('SqL'));
+ count
+-------
+ 1
+(1 row)
+
+EXPLAIN (costs off) SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col1) LIKE likequery(pgs2norm('解釈')) AND
+ pgs2norm(col2) LIKE likequery(pgs2norm('ユーサ゛')) AND
+ pgs2norm(col3) LIKE likequery(pgs2norm('SqL'));
+ QUERY PLAN
+-----------------------------------------------------------------------------------------------------------------------------------------------
+ Aggregate
+ -> Bitmap Heap Scan on text_tbl
+ Recheck Cond: ((pgs2norm(col1) ~~ '%解釈%'::text) AND (pgs2norm(col2) ~~ '%ユーザ%'::text) AND (pgs2norm(col3) ~~ '%sql%'::text))
+ -> Bitmap Index Scan on text_tbl_idx
+ Index Cond: ((pgs2norm(col1) ~~ '%解釈%'::text) AND (pgs2norm(col2) ~~ '%ユーザ%'::text) AND (pgs2norm(col3) ~~ '%sql%'::text))
+(5 rows)
+
+-- Test the case where condition has "OR".
+SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col2) LIKE likequery(pgs2norm('ハ゜ラメータ')) OR
+ pgs2norm(col2) LIKE likequery(pgs2norm('㉜')) OR
+ pgs2norm(col2) LIKE likequery(pgs2norm(' '));
+ count
+-------
+ 8
+(1 row)
+
+EXPLAIN (costs off) SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col2) LIKE likequery(pgs2norm('ハ゜ラメータ')) OR
+ pgs2norm(col2) LIKE likequery(pgs2norm('㉜')) OR
+ pgs2norm(col2) LIKE likequery(pgs2norm(' '));
+ QUERY PLAN
+------------------------------------------------------------------------------------------------------------------------------------------
+ Aggregate
+ -> Bitmap Heap Scan on text_tbl
+ Recheck Cond: ((pgs2norm(col2) ~~ '%パラメータ%'::text) OR (pgs2norm(col2) ~~ '%32%'::text) OR (pgs2norm(col2) ~~ '% %'::text))
+ -> BitmapOr
+ -> Bitmap Index Scan on text_tbl_idx
+ Index Cond: (pgs2norm(col2) ~~ '%パラメータ%'::text)
+ -> Bitmap Index Scan on text_tbl_idx
+ Index Cond: (pgs2norm(col2) ~~ '%32%'::text)
+ -> Bitmap Index Scan on text_tbl_idx
+ Index Cond: (pgs2norm(col2) ~~ '% %'::text)
+(10 rows)
+
+SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col1) LIKE likequery(pgs2norm('ハ゜ラメータ')) OR
+ pgs2norm(col2) LIKE likequery(pgs2norm('㉜')) OR
+ pgs2norm(col3) LIKE likequery(pgs2norm(' '));
+ count
+-------
+ 9
+(1 row)
+
+EXPLAIN (costs off) SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col1) LIKE likequery(pgs2norm('ハ゜ラメータ')) OR
+ pgs2norm(col2) LIKE likequery(pgs2norm('㉜')) OR
+ pgs2norm(col3) LIKE likequery(pgs2norm(' '));
+ QUERY PLAN
+------------------------------------------------------------------------------------------------------------------------------------------
+ Aggregate
+ -> Bitmap Heap Scan on text_tbl
+ Recheck Cond: ((pgs2norm(col1) ~~ '%パラメータ%'::text) OR (pgs2norm(col2) ~~ '%32%'::text) OR (pgs2norm(col3) ~~ '% %'::text))
+ -> BitmapOr
+ -> Bitmap Index Scan on text_tbl_idx
+ Index Cond: (pgs2norm(col1) ~~ '%パラメータ%'::text)
+ -> Bitmap Index Scan on text_tbl_idx
+ Index Cond: (pgs2norm(col2) ~~ '%32%'::text)
+ -> Bitmap Index Scan on text_tbl_idx
+ Index Cond: (pgs2norm(col3) ~~ '% %'::text)
+(10 rows)
+
+-- Test the case where condition has "NOT".
+SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col3) LIKE likequery(pgs2norm('ludia')) AND
+ NOT pgs2norm(col3) LIKE likequery(pgs2norm('㊐')) AND
+ NOT pgs2norm(col3) LIKE likequery(pgs2norm('Ⓟ'));
+ count
+-------
+ 11
+(1 row)
+
+EXPLAIN (costs off) SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col3) LIKE likequery(pgs2norm('ludia')) AND
+ NOT pgs2norm(col3) LIKE likequery(pgs2norm('㊐')) AND
+ NOT pgs2norm(col3) LIKE likequery(pgs2norm('Ⓟ'));
+ QUERY PLAN
+------------------------------------------------------------------------------------------
+ Aggregate
+ -> Bitmap Heap Scan on text_tbl
+ Recheck Cond: (pgs2norm(col3) ~~ '%ludia%'::text)
+ Filter: ((pgs2norm(col3) !~~ '%日%'::text) AND (pgs2norm(col3) !~~ '%p%'::text))
+ -> Bitmap Index Scan on text_tbl_idx
+ Index Cond: (pgs2norm(col3) ~~ '%ludia%'::text)
+(6 rows)
+
+SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col2) LIKE likequery(pgs2norm('ludia')) AND
+ NOT pgs2norm(col3) LIKE likequery(pgs2norm('㊐')) AND
+ NOT pgs2norm(col1) LIKE likequery(pgs2norm('Ⓟ'));
+ count
+-------
+ 8
+(1 row)
+
+EXPLAIN (costs off) SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col2) LIKE likequery(pgs2norm('ludia')) AND
+ NOT pgs2norm(col3) LIKE likequery(pgs2norm('㊐')) AND
+ NOT pgs2norm(col1) LIKE likequery(pgs2norm('Ⓟ'));
+ QUERY PLAN
+------------------------------------------------------------------------------------------
+ Aggregate
+ -> Bitmap Heap Scan on text_tbl
+ Recheck Cond: (pgs2norm(col2) ~~ '%ludia%'::text)
+ Filter: ((pgs2norm(col3) !~~ '%日%'::text) AND (pgs2norm(col1) !~~ '%p%'::text))
+ -> Bitmap Index Scan on text_tbl_idx
+ Index Cond: (pgs2norm(col2) ~~ '%ludia%'::text)
+(6 rows)
+
-- Test the case where a multi-column index is created on many columns
CREATE TABLE mc31_tbl (col1 text, col2 char(256), col3 varchar(256), col4 text,
- col5 char(256), col6 varchar(256), col7 text, col8 char(256),
- col9 varchar(256), col10 text, col11 char(256), col12 varchar(256),
- col13 text, col14 char(256), col15 varchar(256), col16 text,
- col17 char(256), col18 varchar(256), col19 text, col20 char(256),
- col21 varchar(256), col22 text, col23 char(256), col24 varchar(256),
- col25 text, col26 char(256), col27 varchar(256), col28 text,
- col29 char(256), col30 varchar(256), col31 text);
+ col5 char(256), col6 varchar(256), col7 text, col8 char(256),
+ col9 varchar(256), col10 text, col11 char(256), col12 varchar(256),
+ col13 text, col14 char(256), col15 varchar(256), col16 text,
+ col17 char(256), col18 varchar(256), col19 text, col20 char(256),
+ col21 varchar(256), col22 text, col23 char(256), col24 varchar(256),
+ col25 text, col26 char(256), col27 varchar(256), col28 text,
+ col29 char(256), col30 varchar(256), col31 text);
CREATE INDEX mc31_tbl_idx ON mc31_tbl USING gin (pgs2norm(col1) gin_bigm_ops,
- pgs2norm(col2) gin_bigm_ops, pgs2norm(col3) gin_bigm_ops,
- pgs2norm(col4) gin_bigm_ops, pgs2norm(col5) gin_bigm_ops,
- pgs2norm(col6) gin_bigm_ops, pgs2norm(col7) gin_bigm_ops,
- pgs2norm(col8) gin_bigm_ops, pgs2norm(col9) gin_bigm_ops,
- pgs2norm(col10) gin_bigm_ops, pgs2norm(col11) gin_bigm_ops,
- pgs2norm(col12) gin_bigm_ops, pgs2norm(col13) gin_bigm_ops,
- pgs2norm(col14) gin_bigm_ops, pgs2norm(col15) gin_bigm_ops,
- pgs2norm(col16) gin_bigm_ops, pgs2norm(col17) gin_bigm_ops,
- pgs2norm(col18) gin_bigm_ops, pgs2norm(col19) gin_bigm_ops,
- pgs2norm(col20) gin_bigm_ops, pgs2norm(col21) gin_bigm_ops,
- pgs2norm(col22) gin_bigm_ops, pgs2norm(col23) gin_bigm_ops,
- pgs2norm(col24) gin_bigm_ops, pgs2norm(col25) gin_bigm_ops,
- pgs2norm(col26) gin_bigm_ops, pgs2norm(col27) gin_bigm_ops,
- pgs2norm(col28) gin_bigm_ops, pgs2norm(col29) gin_bigm_ops,
- pgs2norm(col30) gin_bigm_ops, pgs2norm(col31) gin_bigm_ops);
+ pgs2norm(col2) gin_bigm_ops, pgs2norm(col3) gin_bigm_ops,
+ pgs2norm(col4) gin_bigm_ops, pgs2norm(col5) gin_bigm_ops,
+ pgs2norm(col6) gin_bigm_ops, pgs2norm(col7) gin_bigm_ops,
+ pgs2norm(col8) gin_bigm_ops, pgs2norm(col9) gin_bigm_ops,
+ pgs2norm(col10) gin_bigm_ops, pgs2norm(col11) gin_bigm_ops,
+ pgs2norm(col12) gin_bigm_ops, pgs2norm(col13) gin_bigm_ops,
+ pgs2norm(col14) gin_bigm_ops, pgs2norm(col15) gin_bigm_ops,
+ pgs2norm(col16) gin_bigm_ops, pgs2norm(col17) gin_bigm_ops,
+ pgs2norm(col18) gin_bigm_ops, pgs2norm(col19) gin_bigm_ops,
+ pgs2norm(col20) gin_bigm_ops, pgs2norm(col21) gin_bigm_ops,
+ pgs2norm(col22) gin_bigm_ops, pgs2norm(col23) gin_bigm_ops,
+ pgs2norm(col24) gin_bigm_ops, pgs2norm(col25) gin_bigm_ops,
+ pgs2norm(col26) gin_bigm_ops, pgs2norm(col27) gin_bigm_ops,
+ pgs2norm(col28) gin_bigm_ops, pgs2norm(col29) gin_bigm_ops,
+ pgs2norm(col30) gin_bigm_ops, pgs2norm(col31) gin_bigm_ops);
\copy mc31_tbl from 'data/test_tbl_31.txt'
SELECT col1 FROM mc31_tbl WHERE pgs2norm(col1) like likequery(pgs2norm('_S'));
col1
pgs2norm(col3) gin_bigm_ops);
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, 'v(株)', col1) FROM char_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('v(株)'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('v(株)'));
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, '②⓪', col1) FROM char_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('②⓪'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('②⓪'));
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, 'アプリケーション', col1) FROM char_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('アプリケーション'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('アプリケーション'));
-- Test the case where the columns with VARCHAR data type were indexed
-- with pg_bigm and pgs2norm function.
pgs2norm(col3) gin_bigm_ops);
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, 'v(株)', col1) FROM varchar_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('v(株)'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('v(株)'));
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, '②⓪', col1) FROM varchar_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('②⓪'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('②⓪'));
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, 'アプリケーション', col1) FROM varchar_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('アプリケーション'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('アプリケーション'));
-- Test the case where the columns with TEXT data type were indexed
-- with pg_bigm and pgs2norm function.
pgs2norm(col3) gin_bigm_ops);
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, 'v(株)', col1) FROM text_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('v(株)'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('v(株)'));
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, '②⓪', col1) FROM text_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('②⓪'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('②⓪'));
SELECT pgs2snippet1(1, 32, 1, '★', '★', 0, 'アプリケーション', col1) FROM text_tbl
- WHERE pgs2norm(col1) LIKE likequery(pgs2norm('アプリケーション'));
+ WHERE pgs2norm(col1) LIKE likequery(pgs2norm('アプリケーション'));
+
+-- Test the case where condition has "AND".
+SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col1) LIKE likequery(pgs2norm('解釈')) AND
+ pgs2norm(col1) LIKE likequery(pgs2norm('実装')) AND
+ pgs2norm(col1) LIKE likequery(pgs2norm('場合'));
+EXPLAIN (costs off) SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col1) LIKE likequery(pgs2norm('解釈')) AND
+ pgs2norm(col1) LIKE likequery(pgs2norm('実装')) AND
+ pgs2norm(col1) LIKE likequery(pgs2norm('場合'));
+SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col1) LIKE likequery(pgs2norm('解釈')) AND
+ pgs2norm(col2) LIKE likequery(pgs2norm('ユーサ゛')) AND
+ pgs2norm(col3) LIKE likequery(pgs2norm('SqL'));
+EXPLAIN (costs off) SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col1) LIKE likequery(pgs2norm('解釈')) AND
+ pgs2norm(col2) LIKE likequery(pgs2norm('ユーサ゛')) AND
+ pgs2norm(col3) LIKE likequery(pgs2norm('SqL'));
+
+-- Test the case where condition has "OR".
+SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col2) LIKE likequery(pgs2norm('ハ゜ラメータ')) OR
+ pgs2norm(col2) LIKE likequery(pgs2norm('㉜')) OR
+ pgs2norm(col2) LIKE likequery(pgs2norm(' '));
+EXPLAIN (costs off) SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col2) LIKE likequery(pgs2norm('ハ゜ラメータ')) OR
+ pgs2norm(col2) LIKE likequery(pgs2norm('㉜')) OR
+ pgs2norm(col2) LIKE likequery(pgs2norm(' '));
+SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col1) LIKE likequery(pgs2norm('ハ゜ラメータ')) OR
+ pgs2norm(col2) LIKE likequery(pgs2norm('㉜')) OR
+ pgs2norm(col3) LIKE likequery(pgs2norm(' '));
+EXPLAIN (costs off) SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col1) LIKE likequery(pgs2norm('ハ゜ラメータ')) OR
+ pgs2norm(col2) LIKE likequery(pgs2norm('㉜')) OR
+ pgs2norm(col3) LIKE likequery(pgs2norm(' '));
+
+-- Test the case where condition has "NOT".
+SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col3) LIKE likequery(pgs2norm('ludia')) AND
+ NOT pgs2norm(col3) LIKE likequery(pgs2norm('㊐')) AND
+ NOT pgs2norm(col3) LIKE likequery(pgs2norm('Ⓟ'));
+EXPLAIN (costs off) SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col3) LIKE likequery(pgs2norm('ludia')) AND
+ NOT pgs2norm(col3) LIKE likequery(pgs2norm('㊐')) AND
+ NOT pgs2norm(col3) LIKE likequery(pgs2norm('Ⓟ'));
+SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col2) LIKE likequery(pgs2norm('ludia')) AND
+ NOT pgs2norm(col3) LIKE likequery(pgs2norm('㊐')) AND
+ NOT pgs2norm(col1) LIKE likequery(pgs2norm('Ⓟ'));
+EXPLAIN (costs off) SELECT count(*) FROM text_tbl WHERE
+ pgs2norm(col2) LIKE likequery(pgs2norm('ludia')) AND
+ NOT pgs2norm(col3) LIKE likequery(pgs2norm('㊐')) AND
+ NOT pgs2norm(col1) LIKE likequery(pgs2norm('Ⓟ'));
-- Test the case where a multi-column index is created on many columns
CREATE TABLE mc31_tbl (col1 text, col2 char(256), col3 varchar(256), col4 text,
- col5 char(256), col6 varchar(256), col7 text, col8 char(256),
- col9 varchar(256), col10 text, col11 char(256), col12 varchar(256),
- col13 text, col14 char(256), col15 varchar(256), col16 text,
- col17 char(256), col18 varchar(256), col19 text, col20 char(256),
- col21 varchar(256), col22 text, col23 char(256), col24 varchar(256),
- col25 text, col26 char(256), col27 varchar(256), col28 text,
- col29 char(256), col30 varchar(256), col31 text);
+ col5 char(256), col6 varchar(256), col7 text, col8 char(256),
+ col9 varchar(256), col10 text, col11 char(256), col12 varchar(256),
+ col13 text, col14 char(256), col15 varchar(256), col16 text,
+ col17 char(256), col18 varchar(256), col19 text, col20 char(256),
+ col21 varchar(256), col22 text, col23 char(256), col24 varchar(256),
+ col25 text, col26 char(256), col27 varchar(256), col28 text,
+ col29 char(256), col30 varchar(256), col31 text);
CREATE INDEX mc31_tbl_idx ON mc31_tbl USING gin (pgs2norm(col1) gin_bigm_ops,
- pgs2norm(col2) gin_bigm_ops, pgs2norm(col3) gin_bigm_ops,
- pgs2norm(col4) gin_bigm_ops, pgs2norm(col5) gin_bigm_ops,
- pgs2norm(col6) gin_bigm_ops, pgs2norm(col7) gin_bigm_ops,
- pgs2norm(col8) gin_bigm_ops, pgs2norm(col9) gin_bigm_ops,
- pgs2norm(col10) gin_bigm_ops, pgs2norm(col11) gin_bigm_ops,
- pgs2norm(col12) gin_bigm_ops, pgs2norm(col13) gin_bigm_ops,
- pgs2norm(col14) gin_bigm_ops, pgs2norm(col15) gin_bigm_ops,
- pgs2norm(col16) gin_bigm_ops, pgs2norm(col17) gin_bigm_ops,
- pgs2norm(col18) gin_bigm_ops, pgs2norm(col19) gin_bigm_ops,
- pgs2norm(col20) gin_bigm_ops, pgs2norm(col21) gin_bigm_ops,
- pgs2norm(col22) gin_bigm_ops, pgs2norm(col23) gin_bigm_ops,
- pgs2norm(col24) gin_bigm_ops, pgs2norm(col25) gin_bigm_ops,
- pgs2norm(col26) gin_bigm_ops, pgs2norm(col27) gin_bigm_ops,
- pgs2norm(col28) gin_bigm_ops, pgs2norm(col29) gin_bigm_ops,
- pgs2norm(col30) gin_bigm_ops, pgs2norm(col31) gin_bigm_ops);
+ pgs2norm(col2) gin_bigm_ops, pgs2norm(col3) gin_bigm_ops,
+ pgs2norm(col4) gin_bigm_ops, pgs2norm(col5) gin_bigm_ops,
+ pgs2norm(col6) gin_bigm_ops, pgs2norm(col7) gin_bigm_ops,
+ pgs2norm(col8) gin_bigm_ops, pgs2norm(col9) gin_bigm_ops,
+ pgs2norm(col10) gin_bigm_ops, pgs2norm(col11) gin_bigm_ops,
+ pgs2norm(col12) gin_bigm_ops, pgs2norm(col13) gin_bigm_ops,
+ pgs2norm(col14) gin_bigm_ops, pgs2norm(col15) gin_bigm_ops,
+ pgs2norm(col16) gin_bigm_ops, pgs2norm(col17) gin_bigm_ops,
+ pgs2norm(col18) gin_bigm_ops, pgs2norm(col19) gin_bigm_ops,
+ pgs2norm(col20) gin_bigm_ops, pgs2norm(col21) gin_bigm_ops,
+ pgs2norm(col22) gin_bigm_ops, pgs2norm(col23) gin_bigm_ops,
+ pgs2norm(col24) gin_bigm_ops, pgs2norm(col25) gin_bigm_ops,
+ pgs2norm(col26) gin_bigm_ops, pgs2norm(col27) gin_bigm_ops,
+ pgs2norm(col28) gin_bigm_ops, pgs2norm(col29) gin_bigm_ops,
+ pgs2norm(col30) gin_bigm_ops, pgs2norm(col31) gin_bigm_ops);
\copy mc31_tbl from 'data/test_tbl_31.txt'
SELECT col1 FROM mc31_tbl WHERE pgs2norm(col1) like likequery(pgs2norm('_S'));