如在数据库中有一张表 dress(服装),它有一个专门用来存特殊属性的字段:json_data ,字段类型是JSON格式的. 存放的JSON格式多为:
{
color:'',
type:'',
size:'',
}
如果我要在后端查出 json_data 字段中 color 包含 red 的数据怎么办呢?
目前已知数据库的查询语法是:
select * from dress where json_data->'$.color' like '%red%'
那我在Java中如何配合 Mybatis-plus实现呢,以及如果查询的条件是动态的(假如前端传 size),怎么办呢?
据我所知,
Mybatis-plus
现在并没有很好的支持这种查询方式。但是反向思考一下。
存特殊属性的字段:json_data
这个的合理性?一般来说是,冗余数据、不易修改、一个整体的。尤其是不会单独去查询的场景。而且这样也不好建索引吧。
MySQL毕竟是一个关系型数据库。你这样使用的话,可以考虑
MongoDB
;或者将里面需要作为查询的字段提取出来;