0

我正在使用 MS SQl 2012 并且有简单的表格

id (int) - primary key
fullname (nvarchar(500) 
age (int)
…

在超过 1500 万条记录的表中,我需要进行简单的搜索,例如

select * from Customers where full name like '%sometext%' 

细节: 1. 可以有几个单词 2. 使用的语言很多 3. 全名还没有任何索引

像这样进行搜索的最佳方法是什么?我应该添加哪些索引?如果不仅有英文单词,我可以使用全文搜索吗?

4

1 回答 1

0

Sargable上述查询不符合要求,因此您的full name列上没有索引会有所帮助。您需要先重组数据或过滤可搜索的内容(年龄 = 30),然后再进行扫描full name

另一种选择是引入文本搜索技术,如@afrancis 所示。

于 2013-11-03T04:05:50.687 回答