开发者社区> 问答> 正文

rds for postgresql如何启用中文分词

想在rds for postgresql中使用中文分词和检索,如何启用?

展开
收起
明虚 2015-12-08 15:26:15 2205 0
2 条回答
写回答
取消 提交回答
  • 公益是一辈子的事, I am digoal, just do it. 阿里云数据库团队, 擅长PolarDB, PostgreSQL, DuckDB, ADB等, 长期致力于推动开源数据库技术、生态在中国的发展与开源产业人才培养. 曾荣获阿里巴巴麒麟布道师称号、2018届OSCAR开源尖峰人物.

    使用时注意有4个参数可控制分词的细粒度。
    请至少打开zhparser.multi_short

    digoal=> set zhparser.multi_short=off;
    SET
    digoal=> select to_tsvector('zhcfg','网络安全部');
         to_tsvector     
    ---------------------
     '安全部':2 '网络':1
    (1 row)
    
    digoal=> set zhparser.multi_short=on;
    SET
    digoal=> select to_tsvector('zhcfg','网络安全部');
             to_tsvector          
    ------------------------------
     '安全':3 '安全部':2 '网络':1
    (1 row)

    在创建函数索引前,务必打开了zhparser.multi_short=on;
    在参数中设置,或者设置用户的默认参数。

    alter role ALL set zhparser.multi_short=on;
    2019-07-16 11:48:01
    赞同 展开评论 打赏
  • 阿里云PostgreSQL和Greenplum内核开发

    CREATE EXTENSION zhparser;

    -- make test configuration using parser

    CREATE TEXT SEARCH CONFIGURATION testzhcfg (PARSER = zhparser);

    ALTER TEXT SEARCH CONFIGURATION testzhcfg ADD MAPPING FOR n,v,a,i,e,l WITH simple;

    -- ts_parse

    SELECT * FROM ts_parse('zhparser', 'hello world! 2010年保障房建设在全国范围内获全面启动,从中央到地方纷纷加大 了 保 障 房 的 建 设 和 投 入 力 度 。2011年,保障房进入了>更大规模的建设阶段。住房城乡建设部党组书记、部长姜伟新去年底在全国住房城乡建设工作会议上表示,要继续推进保障性安居工程建设。');

    SELECT to_tsvector('testzhcfg','“今年保障房新开工数量虽然有所下调,但实际的年度在建规模以及竣工规模会超以往年份,相对应的对资金的需求也会创历史纪录。”陈国强说。在他看来>,与2011年相比,2012年的保障房建设在资金配套上的压力将更为严峻。');

    SELECT to_tsquery('testzhcfg', '保障房资金压力');

    2019-07-16 11:48:01
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像