这个数据库数据比较小,
我现在想做到的是,输入查询的内容,然后每搜到个能匹配的字就会在当前行的code列加一分,
等查询完全部内容的时候,按照code列上有分数的从大到小,降序排列,
怎样每搜到个能匹配的字就会在当前行的code列加一分,这个不知道怎么去操作,有这么操作的么,还是有别的能完成这样效果的操作方法。
你这个是指的是,文本框中的值只要改变,就搜索相匹配的,然后加分?
比如搜 我是谁,凡是有 我 字的加一分,有 是 这个字的再加一分,有 谁 这个字的加一分,
假如有三分的话就排在前面,有两分的就跟在后面,一分接着在后面,0分不显示。
@一首歌听到忘世:这样搜索的话,感觉有的不妥,如果用户输入后,又删除,连续这样的操作,
那你这样做的意义又在哪里呢。
所以,如果要是做这样的效果,先考虑好需求是什么。
你们表里没有id么?
有id
每搜到个能匹配的字 是什么意思
比如搜 我是谁,凡是有 我 字的加一分,有 是 这个字的再加一分,有 谁 这个字的加一分,
假如有三分的话就排在前面,有两分的就跟在后面,一分接着在后面,0分不显示。
@一首歌听到忘世: 那就先把数据库的数据取出来,用代码一个字一个字做对比,符合code+1,结束了再update数据库,不就行了嘛
其实你的描述有点模糊了,你看我理解的对不对:
1.界面上有个输入搜索内容的地方
2.查找数据库表的某一列,统计搜索内容中的每个字出现的频率
比如 搜索 我是谁 查找数据库的B列内容
A B C
1 你我 null
2 她 null
搜索以后的结果为
我 1
是 0(不显示)
谁 0(不显示)
不是,
A B C
1 你我 0
2 她 0
3 是我 0
当查 我是谁 的时候
数据库里面变成
A B C
1 你我 1
2 她 0
3 是我 2
然后,显示出来的效果是,然后将分数高的排在前面显示
1 是我
2 你我