我需要编写SELECT选择行的语句,其中某些字段中任何单词的前缀都与给定模式匹配。我正在使用sqlite,但这是一个普遍的问题。 我提出了两个想法:
SELECT
SELECT (...) FROM table WHERE field LIKE 'phrase%' OR field LIKE '% phrase%'
或者
SELECT (...) FROM table WHERE ' ' || field LIKE '% phrase%'
两者看起来都不那么优雅,当我一次使用更多时... OR ... LIKE ...,SELECT会降低查询性能。
... OR ... LIKE ...
有办法更好地解决这个问题吗?
一种选择是使用“全文模块”。http://www.sqlite.org/fts3.html
SELECT * FROM table WHERE field MATCH 'phrase*';