基于php中的字符串从mysql数据库中搜索

时间:2014-12-02 07:10:28

标签: mysql

我有一个字符串foo =“a,b”。现在我想在mysql数据库中搜索以获取user_id,同时将字符串与likes字段进行比较。喜欢字段具有格式为interest =>的数据。 a c v d b。 不同的角色由空格分隔。我尝试使用喜欢,但结果不符合标准。我怎么能去做呢?

这是我的代码

select user_id from users where interest like %foo%;

1 个答案:

答案 0 :(得分:1)

MySql在set like字段中不支持多个关键字搜索,您应该使用OR添加每个搜索关键字的REGEXP条件 如果您的格式兴趣如=> a,c,v,d,b然后您可以使用FIND_IN_SET()函数,否则REGEXP提供精确搜索。

SELECT user_id FROM users 
WHERE interest REGEXP '[[:<:]]a[[:>:]]' AND interest REGEXP '[[:<:]]b[[:>:]]'

此查询仅在ab

字段中搜索aabbax

LIKE不支持精确搜索。