关于EntityWrapper的in用法

网友投稿 449 2022-08-18


关于EntityWrapper的in用法

目录EntityWrapper的in用法mybatis-plus EntityWrapper in举个例子

EntityWrapper的in用法

EntityWrapper wrapper = new EntityWrapper<>();

wrapper.eq("is_valid", 1);

wrapper.in("life_name", "ge,edu,career");

List userLabelList = userLabelService.selectList(wrapper);

in的第二个参数可以是字符串也可以是list但是注意字符串中","间不能有空格,不然会查出来的语句就是这样的

mybatis-plus EntityWrapper in

环境:

springBoot+mybatis

源码:

/**

*

* IN 条件语句,目前适配mysql及oracle

*

*

* @param column 字段名称

* @param value 匹配值 集合

* @return this

*/

public Wrapper in(String column, Collection> value) {

return in(true, column, value);

}

/**

*

* IN 条件语句,目前适配mysql及oracle

*

*

* @param condition 拼接的前置条件

* @param column 字段名称

* @param value 匹配值 集合

* @return this

*/

public Wrapper in(boolean condition, String column, Collection> value) {

if (condition && CollectionUtils.isNotEmpty(value)) {

sql.WHERE(formatSql(inExpression(column, value, false), value.toArray()));

}

return this;

}

如果condition不传,等同于:condition: true;

如果传入的value不为空,相当于改 in 查询语句为拼接;

举个fPSyzunTJi例子

//代码

@Override

public List selectByCaseIdSet(Set idSet) {

EntityWrapper wrapper = new EntityWrapper<>();

wrapper.in(!CollectionUtils.isEmpty(idSet), "id", idSet);

return this.selectList(wrapper);

}

/**

* 如果idSet 为空,sql: select * from user

* 如果idSet 不为空, sql: select * from user where id in (idSet)

** /


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SpringBoot2零基础到精通之数据库专项精讲
下一篇:Java 中的静态字段和静态方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~