2016-01-18 40 views
0

我如何写这个查询狮身人面像select * from vehicle_details where make LIKE "%john%" OR id IN (1,2,3,4),任何人都可以帮助我吗?我搜索了很多,我找不到答案。请帮忙Mysql狮身人面像查询转换

回答

1

那么,如果你真的想用狮身人面像,也许可以让ID为假的关键字,这样可以在比赛中使用它,比如

sql_query = SELECT id, CONCAT('id',id) as _id, make, description FROM ... 

现在你有一个id基于关键字可以匹配上。

SELECT * FROM index WHERE MATCH('(@make *john*) | (@_id id1|id2|id3|id4)') 

但不要在默认情况下只匹配整个单词阅读了关于狮身人面像关键字匹配,狮身人面像,您需要启用带通配符(例如与min_infix_len)部分字匹配这样你就可以得到接近到一个简单的LIKE%..%匹配(不考虑文字)

+0

哇!这解决了我的问题!非常感谢! –

0

实际上很难做到,因为混合字符串搜索(LIKE这将是MATCH) - 与属性过滤器。

会提示两个单独的查询,一个用于文本过滤器的sphinx。 IN过滤器直接在数据库中执行(mysql?)。将结果合并到应用程序中。

+0

谢谢你的回答。但我不认为这将适用于这种情况.. –