Postgres全文索引

Postgres 分词插件安装脚本

#!/bin/bash
cd /usr/local/src
wget http://www.xunsearch.com/scws/down/scws-1.2.2.tar.bz2
tar -jxv -f scws-1.2.2.tar.bz2
cd scws-1.2.2
./configure
make && make install

cd /usr/local/src
git clone https://github.com/amutu/zhparser.git
cd zhparser
SCWS_HOME=/usr/local make && make install

创建全文索引配置

CREATE EXTENSION zhparser;
CREATE TEXT SEARCH CONFIGURATION renren.nickname_cfg (
  PARSER = zhparser
);
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR a WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR b WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR c WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR d WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR e WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR f WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR g WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR h WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR i WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR j WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR k WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR l WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR m WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR n WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR o WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR p WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR q WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR r WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR s WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR t WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR u WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR v WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR w WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR x WITH simple;
ALTER TEXT SEARCH CONFIGURATION renren.nickname_cfg ADD MAPPING FOR y WITH simple;

使用方式


select * from renren.user_nickname_search where fti_nickname @@ to_tsquery(array_to_string(array(select token from ts_parse('public.zhparser','那谁')),' & '));
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,569评论 19 139
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,273评论 6 342
  • 在美国,当下信奉的理念是:最佳的抚养孩子的办法就是,妈妈的陪伴时间(mother’stime)对于孩子的幸福(we...
    CchenOntheway阅读 2,694评论 0 3
  • 时隔多久,写写作业心得。 以下是我这次写该页面的感受: 这次的任务时间挺长的,不过呢,回家过了个假期,完成过程是在...
    QinRenMin阅读 410评论 0 0
  • 每次开始做一件事,似乎都需要设想很多。需要很多有意义的理由。甚至会想到如果做到了,会有多大的回报 ,也许会是一种利...
    静谧夜空阅读 301评论 0 0

友情链接更多精彩内容