MySQL FIND_IN_SET不返回中间元素的数据

时间:2014-12-18 04:09:14

标签: mysql

我有一些数据,我认为FIND_IN_SET对我有用,但显然这是因为我所寻找的是第一个元素。

即。

SELECT * FROM myData WHERE FIND_IN_SET(2, field)>0 
当数据如下时,

不返回

|----field----| |---- Title ----|
|1, 2, 3, 4   | | Something her |
|0, 2, 3, 4   | | Something her |
|12, 2, 3, 4  | | Something her |
|133, 2, 3, 4 | | Something her |

它没有识别字段中的2 - 我的查询是否有问题?

由于

1 个答案:

答案 0 :(得分:1)

分隔字符是,,它表示除了第一个元素之外的所有元素都有一个前导空格。

在你的情况下找不到2,因为那里没有这样的元素,但是' 2'2带有前导空格)

PS:您通常必须使用一对多或多对多的实现,而不是目前的实现。