用SQL语句求某文章中出现关键词的个数
来源:互联网 发布:模具编程入门先学什么 编辑:程序博客网 时间:2024/05/13 07:11
一、介绍
最近csdn论坛有人问我这样一个问题,说有一篇文章存在数据库中,然后有三个关键词,说是存取文章信息的时候,返回关键词的个数。故有此文。以供大家参考。
二、sql语句
DECLARE @article varchar(4000),
@keyword_One varchar(300),
@keyword_Two varchar(300),
@keyword_Three varchar(300)
--文章内容
SET @article ='2008年普通高校招生全国统一考试将于月、日举行,山东、上海、江苏、广东、海南等省市因考试科目设置不同,考试时间延长到日结束。四川省灾区的六市州个县(市、区)和甘肃省灾区的两市州的个县(市、区)延期举行高考,延期高考的时间将在正常高考结束后及时向社会公布。今年高考是在全国人民万众一心抗震救灾当中进行的,切实做好今年高考有关工作具有特殊意义。国务院领导高度重视,多次指示要求有关部门密切配合,通力合作,确保今年高考万无一失。教育部、公安部等部委和各地相关部门均采取了一系列措施,进一步加强了今年高考的各项具体工作。
这些措施包括一是采取严厉措施维护考风考纪,严厉打击无线设备考试作弊。为了维护良好的考风考纪和考试公正,今年各地继续组织考生签定“诚信高考协议书”,并开展以“诚实守信”为主题的教育活动,同时将加大对作弊、替考等违规行为的处罚力度:对在今年高考中有严重违规行为(如利用通讯工具作弊、替考等)的考生,将取消其当年全国统考各科成绩,同时下一年度不得报名参加全国统考;高中在校非应届毕业生参加高考,不仅取消其当年各科成绩还将给予其应届毕业当年不得报名参加全国统考的处理;在校大学生参与替考,取消其当年全国统考各科成绩,并由其所在高校按照普通高校学生管理规定严肃处理,情节严重的给予开除学籍处分;对虚报、隐瞒或伪造、涂改有关材料及其他欺诈手段,或者因招生工作人员或其他人员的徇私舞弊行为取得考试资格或录取资格的考生,取消其当年的考试资格或录取资格。
'
SET @keyword_One ='考试'
SET @keyword_Two ='考纪'
SET @keyword_Three='考风'
--查看关键词的个数
select
( LEN( @article ) - LEN( replace( @article, @keyword_One,'' ) ) ) / LEN( @keyword_One ) AS 考试出现的次数,
( LEN( @article ) - LEN( replace( @article, @keyword_Two,'' ) ) ) / LEN( @keyword_Two ) AS 考纪出现的次数,
( LEN( @article ) - LEN( replace( @article, @keyword_Three,'' ) ) ) / LEN( @keyword_Three ) AS 考风出现的次数
/*结果
考试出现的次数 考纪出现的次数 考风出现的次数
----------- ----------- -----------
7 2 2
*/
三、改写成sql函数
/*求第一个字符串中第二个字符串的个数*/
create FUNCTION [dbo].[m_sqlcount]
(
@Str_One nvarchar(200),
@Str_Two nvarchar(200)
)
RETURNS int AS
BEGIN
DECLARE @sqlcount int
select @sqlcount=
( LEN( @Str_One ) - LEN( replace( @Str_One, @Str_Two,'' ) ) ) / LEN( @Str_Two)
RETURN @sqlcount
END
/*使用示例
SELECT dbo.[m_sqlcount]('如果这一切都是真的,我真的无法接受','真')
- 用SQL语句求某文章中出现关键词的个数--【叶子】
- [MSSQL]用SQL语句求某文章中出现关键词的个数--【叶子】
- 用SQL语句求某文章中出现关键词的个数
- SQL语句:用count求group by分组的个数
- 关于SQL 语句中distinct 关键词的用法小论
- SQL语句中常用关键词及其解释
- SQL语句中常用关键词及其解释
- 求 1 出现的个数
- 求1-n中1出现的个数
- 求数组中各个数的个数出现次数
- 用for语句求前1000个数中偶数的和
- 关于 sql语句的union 关键词
- SQL语句的一些关键词(一)
- sql语句,几个容易混淆的关键词
- 编写sql语句一些关键词的注意事项
- 【SQL分享】求字符串中汉字的个数【经典】
- 用do-while语句求随机是个数的和
- SQL语句查询数据库中重复记录的个数
- 设计模式之一工厂模式
- 拓展---求四个数的最大公约数
- LibGdx----Texture, TextureRegion, SpriteBatch
- 碰撞检测算法:点和矩形碰撞、点和圆形碰撞、矩形碰撞、圆形碰撞
- python代码配色及语法高亮主题
- 用SQL语句求某文章中出现关键词的个数
- ios 选取相片后assets-library的转化
- ArcGis下的叠加分析
- 实例分析varchar和nvarchar的区别
- Openfire导入到Eclipse里面
- 第十二周项目2-OJ平台题目中多种输入形式的处理(1)求N组数的最大公约数
- 浅谈SQL语句大小写是否区分的问题
- 图片文件的储存
- SSL 3.0曝出Poodle漏洞的解决方案-----开发者篇