mybatis 一对多 两种查询方式

mybatis 一对多 两种查询方式,第1张

mybatis 一对多 两种查询方式

注意事项:  如果是多表 例如有A表,B表  A是多端,B是一端 那么就要在B端声明A端的集合 必须

上代码:

我使用的是java语言,先看实体类 这是单表的一对多 多表跟单表逻辑是一致

public class Menu extends PublicVo {
    private Integer id;
    private String name;
    private String path;
    private String component;
    private String icon;
    private Integer leaf;
    private Integer hidden;
    private String remark;
    private Integer fatherId;
    private Date menuDate;
    private List children;
}

mybatis 查询的一对多的两种方式

第一种:多表联合查询sql

    
    
        
        
        
            
            
            
            
            
            
            
            
            
        
    

    
        select SQL_CALC_FOUND_ROWS * from hongxin_menu as m left join hongxin_menu as m1
        on m.id = m1.fatherId where m.fatherId = 0 limit #{currentPage},#{pageSize}
    

第二种:采用子查询方式

    
    
        
        
        
        
        
        
        
        
        
        
        
        
        
    
    
        
        
        
        
        
        
        
        
        
        
    

    
    
      select * from hongxin_menu where fatherId=#{id}
    

代码段里加注释了 这里不多说了 比较基础的

看一下返回的数据 两种查询方式返回的数据都是一致:

 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5638464.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存