假设我有一个相当简单的应用程序,它允许用户在自己拥有的DVD上存储信息(标题, Actor ,年份,描述等),并且我希望允许用户按以下任何字段(例如“Keanu Reeves”或“黑客帝国”将是有效的搜索查询)。
与SQL全文搜索相比,将查询与简单地按空格分隔并在SQL语句中执行一些“LIKE”子句有什么好处?它只是执行得更好还是会实际返回更准确的结果?
最佳答案
全文搜索可能会更快,因为它将受益于用于查找记录的单词索引,而使用LIKE则需要进行全表扫描。
在某些情况下,LIKE会更准确,因为LIKE“%The%”和LIKE“%Matrix”会选择“The Matrix”而不是“Matrix Reloaded”,而全文搜索将忽略“The”并返回两者。话虽如此,但两者都可能会带来更好的结果。