怎么做一个站内搜索?
就是sql的查询语句不知道怎么写,,,
哪位可以帮一下忙??
要能在多表中查询............
小站,没必要用百度的搜索,我只是想学一下怎么用sql的多表模糊查询!! 展开
2018-12-17 · 数字健康管理平台
本经验以Java语言为例,首先我们打开Java的IDE,这里以常用的Eclipse软件为例,在一个创建好了的Java工程中,或者自己另行创建一个新的java工程项目,通过点击File-New-Class,即可新建一个普通的Java类
在弹出来的“New Java Class”新建类窗口中,可以对欲添加的Java类的类名和实现的接口进行定义,需要注意的是类名的命名要符合Java标识符的规范,如“SearchTest”,并勾选自动创建主方法
点击Finish按钮后可以看到,我们已经创建了一个只包含类名和主方法的空白类,如果要获得站内搜索的功能下面还需要添加上具体的实现过程
首先在代码的头部加上需要引入的包,这里为负责Java的集合类java.uiti.*包,后面的*表示全部导入
首先创建一个空的顺序表,泛型为字符串,然后使用add语句向该空的集合内添加元素
然后我们使用get方法来获取刚才添加入的元素,即进行站内搜索的功能,最后可使用打印语句来查看输出结果
确认编写的代码正确无误后,点击运行按钮,稍等片刻,即可在控制台窗口中输出网站内的每一个记录
看你想怎么架构可以用开源的搜索引擎代码,也可以自己写基于分类的搜索算法
具体步骤:
对你站内的网页等信息做权限处理,哪些能别搜索,哪些不能别搜索
写一个对自己站内信息搜索的“爬虫”,算法很多不详写
检索时,从“爬虫"数据库搜索,或者做即时的运算,推荐前者
开源搜索引擎:Apache Solr,Elastic Search,Index Tank,Katta等。
分类搜索:你要做一个类似淘宝的分类系统或者设置关键字、标签等,然后对标签和类别进行搜索,参考算法有A*算法,回溯算法等
你还是用别人的吧,如百度,google
源码如下:百度
<form action="http://www.baidu.com/baidu" target="_blank">
<table bgcolor="#FFFFFF"><tr><td>
<input name=tn type=hidden value=baidu>
<a href="http://www.baidu.com/"><img src="https://gss0.bdstatic.com/70cFsjip0QIZ8tyhnq/img/logo-80px.gif" alt="Baidu" align="bottom" border="0"></a>
<input type=text name=word size=30>
<input type="submit" value="百度搜索">
</td></tr></table>
</form>
(select 字段列表 from 表A where charindex(要查找的字段,'要查找的内容')>0)
union all
(select 字段列表 from 表B where charindex(要查找的字段,'要查找的内容')>0)
union all
...
如果要查找的表很多的话,其中的表A表B可以使用
select name from sysobjects where xtype='u'
取得,用while生成sql语句后
exec(@sql)
执行