回答

收藏

在sqlite中搜索字段中每个单词的匹配前缀

技术问答 技术问答 147 人阅读 | 0 人回复 | 2023-09-12

我需要编写SELECT选择行语句,其中一些字段中任何单词的前缀都与给定模式相匹配。我正在使用它sqlite,但这是一个常见的问题。3 s  h$ r+ }: L. l( y, ^* Q
我提出了两个想法:# w0 K" r- m* V7 T4 z6 Y6 Y' D' h
SELECT (...) FROM table WHERE field LIKE 'phrase%' OR field LIKE '% phrase%'或者
  s  r6 ^% {/ w7 L0 P1 I  Y( \SELECT (...) FROM table WHERE ' ' || field LIKE '% phrase%'两者都不那么优雅,当我一次使用更多的时候... OR ... LIKE ...,SELECT会降低查询性能: j% \' V( ^% \5 Y4 N  i
有没有办法更好地解决这个问题?
( {) J7 O5 T% b9 z* s  g                                                               
9 P: F9 ]3 k* _, [: R9 {    解决方案:                                                               
0 b5 p8 s6 g! l$ ?                                                                一种选择是使用全文模块。http://www.sqlite.org/fts3.html7 Q0 [3 l: G2 [& s+ m" P
SELECT * FROM table WHERE field MATCH 'phrase*
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则