查询字表再去查询主表数据

最近工作中老是遇到,有个模糊查询要查询子表数据的,但只展示主表数据,今天在此记录下

复制代码
        List<String> productCodes = new ArrayList<>();
     // 先去查询子表数据
if (StrUtil.isNotEmpty(pageProductQueryReq.getFormulaName())){ productCodes = productMapper.getDateByFormulaName(pageProductQueryReq.getFormulaName()); if (CollUtil.isEmpty(productCodes)){ Page<ProductVo> voPage = new Page<>(pageProductQueryReq.getCurrentPage(),pageProductQueryReq.getPageSize()); return BaseResponse.ok(voPage); } } Page<Product> page = new Page<>(pageProductQueryReq.getCurrentPage(),pageProductQueryReq.getPageSize()); LambdaQueryWrapper<Product> wrapper = new LambdaQueryWrapper<>(); wrapper.like(StringUtils.isNotEmpty(pageProductQueryReq.getProductCode()),Product::getProductCode,pageProductQueryReq.getProductCode()); wrapper.like(StringUtils.isNotEmpty(pageProductQueryReq.getProductName()),Product::getProductName,pageProductQueryReq.getProductName());
// 子表查询有数据,那就用in去查询 wrapper.
in(CollUtil.isNotEmpty(productCodes),Product::getProductCode,productCodes); wrapper.orderByDesc(Product::getUpdateTime); Page<Product> productPage = productMapper.selectPage(page, wrapper); Page<ProductVo> productVoPage = new Page<>(); BeanUtil.copyProperties(productPage,productVoPage); productVoPage.setRecords(BeanUtil.copyToList(productPage.getRecords(),ProductVo.class)); List<ProductVo> records = productVoPage.getRecords();
复制代码

以下为查询子表的数据

复制代码
    <select id="getDateByFormulaName" parameterType="java.lang.String" resultType="java.lang.String">
        SELECT DISTINCT a.product_code as product_code FROM product_formula a
        LEFT JOIN parametric_formula b ON a.formula_id = b.formula_id and b.del_flag = 0
        <where>
            <if test="formulaName != null and formulaName != ''">
                and b.formula_name  like concat('%',#{formulaName},'%')
            </if>
        </where>
    </select>
复制代码

 

以上内容纯属笔记记录!

 

posted @   多多指教~  阅读(7)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示