0

我正在寻找一个用于处理网站上的搜索请求的具体代理。代理需要能够处理简单的问题,并提供一系列网站链接以获得答案。

所有文章都在数据库中。每篇文章都有一个标题字段,以及一系列用于对文章进行分类的标签。

在这一点上,我的简单算法是:

  • 将问题分成一系列单词。
  • 删除所有常用词,如“a”、“the”、“how”等。
  • 创建一个“where”子句,在文章正文、文章标题和标签中搜索剩余的单词。
  • 显示列表,可能与标题匹配的文章排名第一,标签第二,文章正文第三。

有没有更好的算法将英语问题转换为 SQL 查询?文章作者是否应该跟踪每篇文章的具体细节以进一步改善搜索结果?在使用搜索时是否应记录一些详细信息以进一步改进搜索结果?

更新: 该网站将使用最新的 ASP.NET 在 IIS 上运行。后端数据库将是 SQL Server。

4

2 回答 2

1

真正的英语查询解析确实没有简单的解决方案。大多数搜索引擎只是简单地消除干扰词,就像你提议的那样,然后寻找剩余的词。如果您使用的是 Microsoft SQL,则可能需要查看全文搜索 (SQL Server)。如果您可以使用 Microsoft SQL Server 2012,您可能还想阅读语义搜索 (SQL Server)。如果您使用的是 MySQL,请参阅12.9。全文搜索功能

于 2012-08-13T15:31:56.263 回答
-1

您可能会发现Kueri.me相关。

Kueri 将自然语言转换为 SQL。它带有一个开箱即用的 Javascript 库,可以集成到网站中。

你可以问:

  • 给我看文章
  • 排名前 10 的文章
  • 按创建日期排列的最后 5 篇文章
  • 上周添加的最后 7 篇文章,描述中包含“xx”或“yy”
  • 显示所有排名超过 2 的文章
  • 每个部分有多少没有评分的文章
于 2013-02-13T15:21:44.660 回答