这里我们讲的是一个值是否在数据库的某个属性数组中。
参考:mysql数据库存数组类型数据,如何判断数组中是否包含某个值?使用mybatisplus查询。_mysql查询数组包含_爱北的琳儿的博客-CSDN博客
MySql中json类型数据的查询以及在MyBatis-Plus中的使用_mybatisplus查询json字段_π大星的日常的博客-CSDN博客
记录一下自己的报错排查:
网上很多的说法都是先排除pageHelper里的jsqlparser以及排除mybatisplus里的jsqlparser,升级mp版本,再重新引入jsqlparser4.2版本依赖,都试过没有效
最后发现是因为[]外面没有加 ' ' 单引号的原因,如下:
如果不再报以上错误了,但是查出来的数据为空,那有可能是空格原因导致不匹配,如下:
数据库存储数据格式(无空格):
错误代码写法(有空格):
sql日志如下:
正确格式:
参考文章示例里的数组存储的数据类型是int,我的数据类型是string, 所以我的腰在[]里加上" "引号,用"\"进行转义,否则无法使用变量参数