在MyBatis-Plus中,你可以直接在XML映射文件或注解中使用FIND_IN_SET函数,就像使用任何原生SQL函数一样。MyBatis-Plus并没有为FIND_IN_SET提供特定的封装或模拟,因此你需要直接在你的SQL语句中调用这个函数。 3. MyBatis-Plus中使用find_in_set的示例代码或查询语句 在XML映射文件中使用 xml <mapper namespace...
mybatis-plus中使⽤FIND_IN_SET函数 使⽤场景 查询⽂章的⽅法中有⼀个需求是根据Tag查询,tag标签在数据库中存储的是⼀个字符串数组,现在前端传⼊⼀个字符串数组或者⼀个字符串,判断数据库中存储的数组是否包含这个数组中的元素,之前⽤的是like⽅法判断,但是如果两个标签很像的话就会查到...
FIND_IN_SET 函数是 IN 函数的升级版,功能类似。区别在于:如果是常量,则可以直接用 IN, 否则要用 FIND_IN_SET() 函数default List<DeptDO> selectChildrenDeptByParentId(Long parentId) { return selectList(new LambdaQueryWrapperX<DeptDO>() .eq(DeptDO::getStatus, 0) .apply( parentId != null,"...
mybatis-plus中使用FIND_IN_SET函数 使用场景 查询文章的方法中有一个需求是根据Tag查询,tag标签在数据库中存储的是一个字符串数组,现在前端传入一个字符串数组或者一个字符串,判断数据库中存储的数组是否包含这个数组中的元素,之前用的是like方法判断,但是如果两个标签很像的话就会查到错误的数据。 解决方法 使用...
mybatis plus QuerManager使用 FIND_IN_SET 前言: 新项目要做一个根据用户数据权限查询用户列表接口,查询逗号分割的数据用like查询会导致数据不准确,然后公司用的是mybatis-plus 我把解决问题过程中的一个坑记录一下,防止大家入坑。 问题解析: 说白了就是 一个字段里面的数据是用(,)逗号隔开的,比如:A100,A1001...
mybatis-plus使用FIND_IN_SET,xxxQueryWrapper.eq("is_deleted","0").apply(deptUser.getDeptId()!=null,"dept_id='"+deptUser.getDeptId()+"'orFIND_IN_SET(dept_id,'"+deptUser.g...
强大的查询构建:可以使用 Lambda 表达式轻松构建复杂的查询条件,如等于、不等于、大于、小于、模糊匹配、IN 等。 链式调用:MyBatis-Plus 的 Wrapper 支持链式调用,可以连续使用多个条件方法,构建复杂的查询逻辑。 易于维护:使用 Lambda 表达式编写的查询条件更加集中,易于理解和维护。 示例: QueryWrapper<User> queryWrapp...
setVersion(1); //2 更新条件 UpdateWrapper<Customer> updateWrapper = new UpdateWrapper<>(); updateWrapper.in("cid", 1,2,3); //3 更新 int update = customerMapper.update(customer, updateWrapper); System.out.println(update); } 4.3 分页 4.3.1 内置插件 主体插件: MybatisPlusInterceptor,该...
mybatis-plus使用FIND_IN_SET xxxQueryWrapper.eq("is_deleted","0").apply(deptUser.getDeptId() != null,"dept_id = '"+deptUser.getDeptId()+"' or FIND_IN_SET ( dept_id , '"+deptUser.getDeptId()+"' )"); 分类: 技术/ 小技巧 好文要顶 关注我 收藏该文 微信分享 LHX2018 粉丝-...
apply(branchCode != null,"FIND_IN_SET ('"+branchCode+"',data)");` * 1 * 2 然后就万事大吉,一路高歌没bug 结论: 大家以后有需要 查询符号分割的数据结构时候,用 like 会查询到多余数据,大家可以使用FIND_IN_SET 函数,切记一定要加冒号,我把正确的代码写在下面,大家可以自行copy 正确的代码: `...