Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 如何搜索允许标记的数据库列?_.net_Sql Server 2005_Search_Full Text Search_Markup - Fatal编程技术网

.net 如何搜索允许标记的数据库列?

.net 如何搜索允许标记的数据库列?,.net,sql-server-2005,search,full-text-search,markup,.net,Sql Server 2005,Search,Full Text Search,Markup,文本可以使用markdown、bbcode、html等存储在数据库中。我应该从搜索词中删除任何允许的标记吗?您的标记解析器是否有任何方法可以帮助完成该任务 我打算使用像“%searchword%”这样的查询。对于这样一个简单的文本搜索,全文搜索有什么优势吗 更新:似乎有很多方法可以做到这一点。我会进一步澄清我的情况。这是一家公司的招聘网站,大约有5或7个varchar列可供搜索(其中4个允许标记),在任何给定时间大约有150个活动招聘 我会使用一些外部全文搜索工具,例如Lucene。我会在单独的

文本可以使用markdown、bbcode、html等存储在数据库中。我应该从搜索词中删除任何允许的标记吗?您的标记解析器是否有任何方法可以帮助完成该任务

我打算使用像“%searchword%”这样的查询。对于这样一个简单的文本搜索,全文搜索有什么优势吗


更新:似乎有很多方法可以做到这一点。我会进一步澄清我的情况。这是一家公司的招聘网站,大约有5或7个varchar列可供搜索(其中4个允许标记),在任何给定时间大约有150个活动招聘

我会使用一些外部全文搜索工具,例如Lucene。

我会在单独的字段中存储该字段的条带版本,并使用全文索引搜索。剥离字段将使用触发器更新为最新版本。如果文本上有任何类型的标记(如HTML),在索引和搜索过程中可能无法获得很高的语言准确性。在这种情况下,您有两种选择首选方法是将文本数据存储在varbinary(max)列中,并指示其文档类型,以便对其进行筛选。如果这不是一个选项,您可以考虑使用中性字断路器,并且如果可能的话,将标记数据(例如“BR”在HTML中添加到您的噪声单词列表中)。 另见

备选方案