Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.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
Sql 全文搜索包含多个条件_Sql_Sql Server 2008_Full Text Search_Contains - Fatal编程技术网

Sql 全文搜索包含多个条件

Sql 全文搜索包含多个条件,sql,sql-server-2008,full-text-search,contains,Sql,Sql Server 2008,Full Text Search,Contains,我正在使用SQL Server 2008的全文搜索。我想用不同的条件在两列中搜索 例如: 列名:包含(名称“ma*”) 列地址:包含(地址“tr”) 当我像这样使用或运算符时: contains(name, '"ma*"') or contains (address, 'tr') 它变得非常慢。是否有其他解决方案将它们合并到一个请求中?提前谢谢以前有多快?现在有多快?全文搜索几乎总是很慢,因为除了极少数情况外,它需要全表扫描。我使用LIKE,但它非常慢,选择500000行需要9秒钟,所以我

我正在使用SQL Server 2008的全文搜索。我想用不同的条件在两列中搜索

例如:

  • 列名:包含(名称“ma*”)
  • 列地址:包含(地址“tr”)
当我像这样使用
运算符时:

contains(name, '"ma*"') or contains (address, 'tr')

它变得非常慢。是否有其他解决方案将它们合并到一个请求中?提前谢谢

以前有多快?现在有多快?全文搜索几乎总是很慢,因为除了极少数情况外,它需要全表扫描。我使用LIKE,但它非常慢,选择500000行需要9秒钟,所以我决定使用全文搜索,但我不知道如何使用。使用contains(名称“ma*”)或contains(地址“tr”);它占用超过14秒。您在搜索的两列上都有占位符吗?您真的需要占位符吗?从你的例子很难判断。如果有疑问,您可能希望提供更详细的搜索模式和示例数据。您是否尝试过CHARINDEX
?如果单个查询快得多,您可以考虑单独运行它们,而<代码>联合所有它们的结果。