在使用mybatisPlus时,有时需要一些负责的sql条件拼接,这时,我们可以利用 QueryWrapper的and(Consumer consumer) 和 or(Consumer consumer) 来对条件进行拼接。
查询条件拼接, 例如:support = ? AND type_id = ? AND ( (id = ? OR id = ? OR id = ?) )
QueryWrapper<Bean> wrapper = new QueryWrapper();
wrapper.eq("support", support);
wrapper.eq("type_id", typeId);
wrapper.and(wr->{
String[] deviceIds = StringUtils.split(deviceIdArr, ",");
Arrays.stream(deviceIds).forEach(e->{
wr.eq("id", e).or();
});
});