当我搜索"约塞米蒂国家公园"时获得"约塞米蒂国家公园"记录
- SELECT * FROM table WHERE col LIKE '%yosemite%'; Works
- SELECT * FROM table WHERE col LIKE '%yosemite national%'; Works
- SELECT * FROM table WHERE col LIKE '%yosemite national park%'; Works
- SELECT * FROM table WHERE col LIKE '%yosemitenationalpark%'; Not Working
- SELECT * FROM table WHERE col LIKE '%yosemite park%'; Not Working
- SELECT * FROM table WHERE col LIKE '%park yosemite%'; Not Working
还有其他方法吗?
Like只是一个正则表达式-它不会查找不同顺序的单词。
如果你想要任何顺序,你可以这样做(但如果你的表很大,效率不是很高):
SELECT * FROM table WHERE col LIKE '%park%' and col like '%yosemite%'
试试
SELECT * FROM table WHERE col LIKE '%yosemitepark%' OR REPLACE(col," ","") LIKE '%yosemitepark%'