Sql Server-使用Sql Server自带的分词功能实现字段关键词提取(分词能力很低,慎用)
Posted 陋室铭
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sql Server-使用Sql Server自带的分词功能实现字段关键词提取(分词能力很低,慎用)相关的知识,希望对你有一定的参考价值。
“创建全文索引
启动服务
在SQL Server配置管理工具中,找到\'SQL Full-text Filter Daemon Launcher\'服务用本地用户启动。
创建全文目录
打开需要创建全文目录的数据库-存储-全文目录-右键新建全文目录
用语句创建全文目录
CREATE FULLTEXT CATALOG [FD_HouseSearch]WITH ACCENT_SENSITIVITY = ON
AS DEFAULT
AUTHORIZATION [dbo]
此外还可以通过存储过程创建全文目录,并且可以指定全文目录文件所在磁盘上的位置,如下所示:
USE [pratice]
GO
--创建全文索引的方式1:
-------------开启全文索引和创建全文索引目录 全文目录创建的路径是D:\\fulltext
--fulltext_pratice是自己自定义的全文目录名称
EXEC [sys].[sp_fulltext_database] @action = \'enable\' -- varchar(20)
--如果数据库中已存在全文目录fulltext_pratice要先drop掉
--EXEC [sys].[sp_fulltext_catalog] @ftcat = \'fulltext_pratice\', -- sysname
-- @action = \'drop\' -- varchar(20)
EXEC [sys].[sp_fulltext_catalog] @ftcat = \'fulltext_pratice\', -- sysname
@action = \'create\', -- varchar(20)
@path = N\'D:\\fulltext\' -- nvarchar(101)
当然使用SSMS创建全文目录的时候也会有一个选项叫你选择目录位置,全文索引就存放在这个位置
创建全文索引
右键需要创建全文索引的表-全文索引-定义全文索引
1.全文索引必须要有一个唯一非空索引,这里选择主键。
2.选择需要全文搜索的列,并且选择断字符语言,因为该字段主要用来存储中文,所以这里也选择了简体中文。
断字符:断字符用来对全文搜索数据进行语言分析,查找单词的边界,也就是怎样将一段很长的内容拆分成日常的词语或字。例如“全文搜索”,可能会断字成“全文”、‘搜索’、‘全’、‘文’、‘搜’、‘索’等符合中国人正常的习惯的词或字。
3.选择跟踪方式,这里选择自动跟踪,就是表发生更改时自动填充索引。
4.选择全文目录、索引文件、非索引字表
非索引字表:在刚才的断字中讲了怎样断字,这里就是将断的字保存在一张表中,该处选择系统默认的非索引字表.
----查询断字表
SELECT TOP 1000 * FROM sys.dm_fts_index_keywords(db_id(\'\'), object_id(\'\'))
”
从该链接的第四步当中:
SELECT TOP 1000 * FROM sys.dm_fts_index_keywords(db_id(\'数据库名称\'), object_id(\'目标表\'))
以下为我的分词效果:
以上是关于Sql Server-使用Sql Server自带的分词功能实现字段关键词提取(分词能力很低,慎用)的主要内容,如果未能解决你的问题,请参考以下文章