1、需求描述:数据库采集sql语句的记录表,包含记录编号-ID、日期时间-data、sql语句-statement,对表内每一条记录的sql语句和表内其他记录的sql语句进行模糊匹配,以顺序字符匹配方式进行,达到定义的相似度,就为该相似度统计值加1,目的是统计和该sql语句类似语句的执行频率;表内每新增一条记录就要和表内原保存所有记录进行sql模糊匹配,并为表内原保存记录的相应相似度等级增加统计值,比如原来表内有100万内,现在新增一条,则要和100万进行匹配;相似度等级定义:100%完全相似、99%-90%较高相似、89%-80%基本相似、79%-70%接近相似;原记录sql语句和匹配的记录sql语句达到所定义相似度就增加统计值,其中各级别不累加,比如达到较高相似,基本相似和接近相似不增加统计值。
2、sql表设计字段如下:
ID date statement 100%degree 90%degree 80%degree 70%degree
1 2013-4-22 10:10:10 select * from A where B=C 20 50 30 80
2 2013-4-22 10:11:10 delete * from A where B=C 6 3 10 2
<