C# 搜索页面的算法

C# 搜索页面的算法,c#,asp.net,jquery,sql,sql-server-2008,C#,Asp.net,Jquery,Sql,Sql Server 2008,我正在创建一个搜索页面,在那里我们可以通过输入文本找到产品 带来了夜晚 我的查询带来的记录至少包含此字段中的单词 需要: 1.第一行应该包含带有给定句子的记录。 2.第二行是最匹配的。 3.第三排,下一排……等等 如何做到这一点。这有什么算法吗。如果有人分享你的想法,会更有帮助 编辑: 搜索顺序示例: 1. Brings on the night 2. Whoever Brings the Night 3. Night Baseball Brings 4. Night ride 5. Night

我正在创建一个搜索页面,在那里我们可以通过输入文本找到产品

带来了夜晚

我的查询带来的记录至少包含此字段中的单词

需要: 1.第一行应该包含带有给定句子的记录。 2.第二行是最匹配的。 3.第三排,下一排……等等

如何做到这一点。这有什么算法吗。如果有人分享你的想法,会更有帮助

编辑:

搜索顺序示例:

1. Brings on the night
2. Whoever Brings the Night
3. Night Baseball Brings
4. Night ride
5. Night Round
6. Brings flower

Geetha

建立一个搜索引擎是一项非常复杂的工作,涉及歧义、人类语言、拼写错误等等。您应该尝试使用数据库引擎附带的任何东西。SQLServer和SQLite具有现成的功能,大多数其他数据库可能也具有类似的功能。这些引擎不是特别好,但它们应该足以满足简单的场景。对于更严肃的工作,请尝试Lucene,它有不同的编程语言风格。

构建搜索引擎是一项非常复杂的任务,需要处理歧义、人类语言、拼写错误等问题。您应该尝试使用数据库引擎附带的任何东西。SQLServer和SQLite具有现成的功能,大多数其他数据库可能也具有类似的功能。这些引擎不是特别好,但它们应该足以满足简单的场景。对于更严肃的工作,请尝试Lucene,它有不同的编程语言风格。

作为一个非常简单的解决方案,您可以使用类似sql的操作符。而不是

从参数为某物的表\u name中选择对象\u name

你会的

从表\u name中选择对象\u name,其中的参数类似于


这可能适用于非常简单的场景

作为一个非常简单的解决方案,您可以使用类似sql的运算符。而不是

从参数为某物的表\u name中选择对象\u name

你会的

从表\u name中选择对象\u name,其中的参数类似于


这可能适用于非常简单的场景

您尝试过全文搜索吗?
您尝试过全文搜索吗? 一些指针 -尝试您的RDBMS全文搜索或调查解决方案,如Lucene/ -对于不那么琐碎的手工制作的排名,存在in的实现 -可以做很多事情,例如查看与mysql或MSSQL相比的内部搜索中的所有选项

内部RDBMS搜索可能是一个例外,postgres通常没有太多选项,实现自己的搜索通常太难,或者RDBMS不会让您高效地完成

一些指针 -尝试您的RDBMS全文搜索或调查解决方案,如Lucene/ -对于不那么琐碎的手工制作的排名,存在in的实现 -可以做很多事情,例如查看与mysql或MSSQL相比的内部搜索中的所有选项

内部RDBMS搜索可能是一个例外,postgres通常没有太多选项,实现自己的搜索通常太难,或者RDBMS不会让您高效地完成

在Java中

php Zend Lucene中也有一个用于此的端口

您还有一个到C的端口

只需更改数据库模型,即可将其集成到搜索引擎中

看一看。我过去使用过Lucene,它一直都非常有效

在Java中

php Zend Lucene中也有一个用于此的端口

您还有一个到C的端口

只需更改数据库模型,即可将其集成到搜索引擎中


看一看。我过去使用过Lucene,它一直都非常有效

我正在做某事。但是我没有得到正确的订单。好吧,我明白你的意思。这是一个非常简单的解决方案。如果你想让它们有序排列,那么你需要定义一些匹配度,让m是x和y匹配的程度。这并不简单,我想我无法通过这个文本框给你答案。如果你真的想这样做,你可能应该按照Marcelo的建议调查Lucene当我说这是一个简单的解决方案时,我的意思是我在这个答案中给出的是一个简单的解决方案,因此不一定满足订购要求。为了满足你的需要,你可能需要一些相当复杂的东西。我正在做一些事情。但是我没有得到正确的订单。好吧,我明白你的意思。这是一个非常简单的解决方案。如果你想让它们有序排列,那么你需要定义一些匹配度,让m是x和y匹配的程度。这并不简单,我想我无法通过这个文本框给你答案。如果你真的想这样做,你可能应该按照Marcelo的建议调查Lucene当我说这是一个简单的解决方案时,我的意思是我在这个答案中给出的是一个简单的解决方案,因此不一定满足订购要求。为了满足你的需要,你可能需要一些合理的智者
icated。一旦您完全定义术语“匹配”,我们将能够指导您找到完整的解决方案。根据您所写的内容,我可以假设这是一种返回可排序值的函数。一旦您完全定义了术语“匹配”,我们将能够指导您找到完整的解决方案。根据您所写的,我可以假设它是某种返回可排序值的函数。