dot*_*uts 40 sql database performance full-text-search sql-like
我有一种情况,我想搜索一个单词.
对于那种情况,从性能的角度来看哪个查询会很好?
Select Col1, Col2 from Table Where Col1 Like '%Search%'
Run Code Online (Sandbox Code Playgroud)
要么
Select Col1, Col2 from Table Where Col1 CONTAINS(Col1,'Search')
Run Code Online (Sandbox Code Playgroud)
?
OMG*_*ies 39
全文搜索(使用CONTAINS)比使用带有通配符的LIKE更快/更有效.全文搜索(FTS)包括定义FTS可以使用的全文索引的功能.如果您打算使用该功能,为什么不定义FTS索引?
喜欢左侧的通配符(IE :) LIKE '%Search'
不能使用索引(假设列存在一个),保证表扫描.我没有测试和比较,但正则表达式有相同的陷阱.为了澄清,LIKE '%Search'
并且LIKE '%Search%'
可以不使用索引; LIKE 'Search%'
可以使用索引.