考虑这个SQL表
id | name | numbers
------------------------
1 | bob | 1 3 5
2 | joe | 7 2 15
此查询将整个表作为结果返回:
SELECT * FROM table WHERE numbers LIKE '%5%'
是否有SQL运算符,只返回第1行(只有数字为5的列)?
答案 0 :(得分:3)
将regexp
与字边界一起使用。 (但你最好遵循戈登的评论)
where numbers REGEXP '[[:<:]]5[[:>:]]'
答案 1 :(得分:2)
很遗憾您没有在numbers
列中使用逗号作为分隔符,因为可以使用FIND_IN_SET
函数,但您可以将其与{{1}一起使用像这样:
REPLACE