参考:mybatis-plus实现多表联查+分类汇总
可以通过@Select注解,自己写sql语句,最后用${ew.customSqlSegment}来插入查询条件。自己写查询方法,非常方便,尤其是一些特殊多表联查,分类汇总等等。
接受数据的方式,可以使用map,也可以使用自定义的Bean对象。
下面是一个取合计值的案例。
package com.tj.caiwu.mapper;import com.baomidou.mybatisplus.core.conditions.Wrapper;import com.baomidou.mybatisplus.core.toolkit.Constants;import com.tj.caiwu.domain.CaiwuPaidaninBom;import com.baomidou.mybatisplus.core.mapper.BaseMapper;import org.apache.ibatis.annotations.Param;import org.apache.ibatis.annotations.Select;import java.util.Map;/*** @Entity com.tj.caiwu.domain.CaiwuPaidaninBom*/public interface CaiwuPaidaninBomMapper extends BaseMapper<CaiwuPaidaninBom> {@Select("SELECT SUM(pay_money) AS payMoneySum , SUM(need_money) AS needMoneySum FROM caiwu_paidanin_bom ${ew.customSqlSegment}")Map<String, Number> moneySum(@Param(Constants.WRAPPER) Wrapper wrapper);}
