Mysql查询字段中包含某字符串的记录

1.正确的方式:

判断字段field_A中是否包含23:

select * from table_test where FIND_IN_SET("23", field_A) ;

2.错误的方式:

select * form table_test where field_A like "%23%"

3.案例分析:

field_A字段:
[5,123,223]
[230,232,233]
[5,23,1]

若想查询field_A字段中含有字符串23的记录,而不包含123231等记录的话,只能通过Mysql函数FIND_IN_SET("str","field")来查询,否则会有干扰数据。

通过like "%23%"会查询到3条记录。
通过like "23%"会查询到后两条记录。
通过like "%23"第一条和第三条记录,所以like模糊查询的并不能满足需求。

猜你喜欢

转载自blog.csdn.net/x541211190/article/details/80205581