在表中有一个字符串($ string)和一个Column(DOMAIN),如下所示:
$string="'domain3','domain2,'domain1'";
-----------------
| DOMAIN |
|---------------|
| domain1 |
| domain2 |
|domain1,domain2|
-----------------
我正在尝试创建一个sql查询,如果域包含在字符串中,则返回结果。我发现我必须拆分列中的条目,所以我有这样的东西:
SELECT * FROM TABLE1 WHERE SUBSTRING_INDEX(DOMAIN, ',', 1) IN ('$string')
但是只有第一个索引匹配时才会给我一个结果,我想做一个循环。 我不知道我的问题是否足够清楚,但为了解释上下文,我试图使用复选框来过滤结果。 谢谢!
答案 0 :(得分:1)
你得到的结果是对的。你只从第一个索引子串。您正在寻找mysql中的爆炸功能。
您可以阅读此页面上的评论,了解解决字符串分割问题的大量解决方案:http://dev.mysql.com/doc/refman/5.0/en/string-functions.html。