哪些数据库支持高效LIKE"%roger%"?(我怎样才能让它更快?)

Luk*_*101 0 sql database performance

我正在寻找支持这样的索引的数据库:

select name from table where name Like "%roger%" 
Run Code Online (Sandbox Code Playgroud)

我需要搜索超过十万行文本,SQL Server需要太长时间.

是否有专门为此查询设计的数据库或索引?(如何更快地进行上述查询?)

mik*_*kel 7

普通(b树)基于索引的任何数据库不能设计一个工作LIKE是开头的查询%,作为强制全面扫描.全文索引是此类查询的替代方法,或者将您的可搜索关键字放入不同的表并对其进行索引(根据您的具体情况,可能是也可能不是可行的解决方案).

  • @pst - 通过在幕后有效地执行"将可搜索的关键字放入表格".除此之外还有更多,但希望它能帮到你. (2认同)