sql-server – SQL Server; TEXT列上的索引

前端之家收集整理的这篇文章主要介绍了sql-server – SQL Server; TEXT列上的索引前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个包含多个列的数据库表;其中大多数是VARCHAR(x)类型的列,其中一些列有一个索引,以便我可以快速搜索其中的数据.

但是,其中一列是TEXT列,因为它包含非常大量的数据(23 kb的普通ascii文本等).我希望能够在该列中搜索(… WHERE col1 LIKE’%search string%’…),但目前正在执行查询.我知道由于这个列搜索,查询很慢,因为当我从WHERE子句中删除该条件时,查询就会立即完成(我会考虑).

我无法在此列上添加索引,因为该选项在sql Server Management Studio的索引构建器/向导中对该列显示为灰色.

我有什么选择,加快该列中的查询搜索

谢谢你的时间…

更新
好的,所以我查看了全文搜索并完成了所有这些工作,现在我想运行查询.但是,当使用“包含”时,它只接受一个单词;如果我需要一个确切的短语怎么办? … WHERE CONTAINS(col1,’搜索短语’)…抛出错误.

对不起,我是sql Server的新手

更新2
对不起,刚想通了;使用多个“包含”子句而不是一个包含多个单词的子句.实际上,这仍然没有得到我想要的(确切的短语)它只确保短语中的所有单词都存在.

解决方法

搜索TEXT字段总是很慢.试试 Full Text Search,看看它是否适合你.

猜你在找的MsSQL相关文章