我需要对我的数据库中的表进行查询。到目前为止,我使用FIND_IN_SET
,因为我有这样的字符串:“twitter,bycicle,car”。FIND_IN_SET部分字符串在Mysql中
然后,我可以FIND_IN_SET("twitter", nameOfColumn)
搜索但现在,我需要搜索只是每个 “集” 的一部分,例如:“推特> 10,bycicle,汽车”
它仍然适用于自行车和汽车,但如果我需要搜索Twitter,我找不到它。什么是正确的方法来做到这一点?
我需要对我的数据库中的表进行查询。到目前为止,我使用FIND_IN_SET
,因为我有这样的字符串:“twitter,bycicle,car”。FIND_IN_SET部分字符串在Mysql中
然后,我可以FIND_IN_SET("twitter", nameOfColumn)
搜索但现在,我需要搜索只是每个 “集” 的一部分,例如:“推特> 10,bycicle,汽车”
它仍然适用于自行车和汽车,但如果我需要搜索Twitter,我找不到它。什么是正确的方法来做到这一点?
下面的查询会给你想要的东西,但是谨慎关于使用它的数据,你必须:
SELECT *
FROM table1
WHERE col1 RLIKE 'twitter'
使用LIKE操作:
SELECT *
FROM table1
WHERE nameOfColumn LIKE '%twitter%';
如果你在字符串中有另一个符号(不是逗号),所以'FIND_IN_SET()'不起作用,你可以使用from substring_index'。 – 2014-12-04 10:41:48
你能告诉我一个例子吗? – Biribu 2014-12-04 10:43:51
这个[link](http://stackoverflow.com/questions/26748845/mysql-split-string/26750049#26750049)是我过去回答的同样的问题,可能对你有帮助。 – 2014-12-04 10:49:41